carta
mongoc_collection_command_simple(3)

mongoc_collection_command_simple3

Parameters

•

collection: A mongoc_collection_t.

•

command: A bson_t containing the command to execute.

•

read_prefs: An optional mongoc_read_prefs_t. Otherwise, the command uses mode MONGOC_READ_PRIMARY.

•

reply: A maybe-NULL pointer to overwritable storage for a bson_t to contain the results.

•

error: An optional location for a bson_error_t or NULL.

Overview

This is a simplified version of mongoc_collection_command() that returns the first result document in reply. The collection's read preference, read concern, and write concern are not applied to the command. The parameter reply is initialized even upon failure to simplify memory management.

This function tries to unwrap an embedded error in the command when possible. The unwrapped error will be propagated via the error parameter. Additionally, the result document is set in reply.

This function is not considered a retryable read operation.

Errors

Errors are propagated via the error parameter.

Returns

Returns true if successful. Returns false and sets error if there are invalid arguments or a server or network error.

This function does not check the server response for a write concern error or write concern timeout.

Examples

The following is an example of executing the ping command.

#include <bson/bson.h>
#include <mongoc/mongoc.h>
#include <stdio.h>
static void
do_ping (mongoc_collection_t *collection)
{
   bson_error_t error;
   bson_t *cmd;
   bson_t reply;
   char *str;
   cmd = BCON_NEW ("ping", BCON_INT32 (1));
   if (mongoc_collection_command_simple (collection, cmd, NULL, &reply, &error)) {
      str = bson_as_canonical_extended_json (&reply, NULL);
      printf ("Got reply: %s\n", str);
      bson_free (str);
   } else {
      fprintf (stderr, "Got error: %s\n", error.message);
   }
   bson_destroy (&reply);
   bson_destroy (cmd);
}

History

  • Debian 13 (Trixie): the text shown here
  • Debian 12 (Bookworm)
  • Debian 11 (Bullseye)
  • Debian 10 (Buster)
  • Debian 9 (Stretch)

Author

MongoDB, Inc

From libmongoc-doc 1.30.4-1+deb13u3 in Debian 13 (Trixie). Parsed by carta from the page's man source.