AnyMongo
view release on metacpan or search on metacpan
AnyMongo.xs view on Meta::CPAN
void
build_insert_message(request_id,ns, a)
SV *request_id
char *ns
AV *a
PREINIT:
buffer buf;
mongo_msg_header header;
int i;
AV *ids = newAV();
PPCODE:
CREATE_BUF(INITIAL_BUF_SIZE);
CREATE_HEADER(buf, ns, OP_INSERT);
for (i=0; i<=av_len(a); i++) {
int start = buf.pos-buf.start;
SV **obj = av_fetch(a, i, 0);
perl_mongo_sv_to_bson(&buf, *obj, ids);
if (buf.pos - (buf.start + start) > MAX_OBJ_SIZE) {
croak("insert is larger than 4 MB: %d bytes", buf.pos - (buf.start + start));
( run in 0.564 second using v1.01-cache-2.11-cpan-71847e10f99 )