mongoc_cursor_new_from_command_reply man page

mongoc_cursor_new_from_command_reply — mongoc_cursor_new_from_command_reply()


mongoc_cursor_t *
mongoc_cursor_new_from_command_reply (mongoc_client_t *client,
                                      bson_t *reply,
                                      uint32_t server_id);



Some MongoDB commands return a “cursor” document. For example, given an “aggregate” command:

{ "aggregate" : "collection", "pipeline" : [], "cursor" : {}}

The server replies:

   "cursor" : {
      "id" : 1234,
      "ns" : "db.collection",
      "firstBatch" : [ ]
   "ok" : 1

mongoc_cursor_new_from_command_reply is a low-level function that initializes a mongoc_cursor_t from such a reply.

When synthesizing a completed cursor response that has no more batches (i.e. with cursor id 0), set server_id to 0 as well.

Use this function only for building a language driver that wraps the C Driver. When writing applications in C, higher-level functions such as mongoc_collection_aggregate are more appropriate, and ensure compatibility with a range of MongoDB versions.


A mongoc_cursor_t. On failure, the cursor’s error is set. Check for failure with mongoc_cursor_error.


MongoDB, Inc


Oct 12, 2017 1.8.1 MongoDB C Driver