Provided by: libmongoc-doc_1.21.0-1build1_all bug

NAME

       mongoc_collection_drop_with_opts - mongoc_collection_drop_with_opts()

SYNOPSIS

          bool
          mongoc_collection_drop_with_opts (mongoc_collection_t *collection,
                                            bson_t *opts,
                                            bson_error_t *error);

PARAMETERS

collection: A mongoc_collection_t.

       • error: An optional location for a bson_error_t or NULL.

       opts may be NULL or a BSON document with additional command options:

       • writeConcern:  Construct  a mongoc_write_concern_t and use mongoc_write_concern_append to add the write
         concern to opts. See the example code for mongoc_client_write_command_with_opts.

       • sessionId: First, construct a mongoc_client_session_t with mongoc_client_start_session. You can begin a
         transaction with mongoc_client_session_start_transaction, optionally  with  a  mongoc_transaction_opt_t
         that  overrides  the options inherited from collection, and use mongoc_client_session_append to add the
         session to opts. See the example code for mongoc_client_session_t.

       • collation: Configure textual comparisons. See Setting Collation Order, and the MongoDB Manual entry  on
         Collation. Collation requires MongoDB 3.2 or later, otherwise an error is returned.

       • serverId:  To  target  a  specific  server, include an int32 "serverId" field. Obtain the id by calling
         mongoc_client_select_server, then mongoc_server_description_id on its return value.

DESCRIPTION

       This function requests  that  a  collection  be  dropped,  including  all  indexes  associated  with  the
       collection.

       If no write concern is provided in opts, the collection's write concern is used.

       If  the collection does not exist, the server responds with an "ns not found" error. It is safe to ignore
       this error; set the Error API Version to 2 and ignore server error code 26:

          mongoc_client_t *client;
          mongoc_collection_t *collection;
          bson_error_t error;
          bool r;

          client = mongoc_client_new (NULL);
          mongoc_client_set_error_api (client, 2);
          collection = mongoc_client_get_collection (client, "db", "collection");
          r = mongoc_collection_drop_with_opts (collection, NULL /* opts */, &error);
          if (r) {
             printf ("Dropped.\n");
          } else {
             printf ("Error message: %s\n", error.message);
             if (error.domain == MONGOC_ERROR_SERVER && error.code == 26) {
                printf ("Ignoring 'ns not found' error\n");
             } else {
                fprintf (stderr, "Unrecognized error!\n");
             }
          }

          mongoc_collection_destroy (collection);
          mongoc_client_destroy (client);

       In MongoDB 3.0 and older, the "ns not found" error code is  the  generic  MONGOC_ERROR_QUERY_FAILURE;  in
       this case check whether the error message is equal to the string "ns not found".

ERRORS

       Errors are propagated via the error parameter.

RETURNS

       Returns  true  if  the  collection  was  successfully  dropped. Returns false and sets error if there are
       invalid arguments or a server or network error.

AUTHOR

       MongoDB, Inc

COPYRIGHT

       2017-present, MongoDB, Inc

1.21.0                                            Feb 09, 2022               MONGOC_COLLECTION_DROP_WITH_OPTS(3)