Provided by: libmongoc-doc_2.2.1-1_all bug

SYNOPSIS

          mongoc_cursor_t *
          mongoc_database_find_collections_with_opts (mongoc_database_t *database,
                                                      const bson_t *opts);

       Fetches a cursor containing documents, each corresponding to a collection on this database.

       To get collection names only, use mongoc_database_get_collection_names_with_opts() <>.

       This  function is considered a retryable read operation.  Upon a transient error (a network error, errors
       due to replica set failover, etc.) the operation is safely retried once.  If retryreads is false  in  the
       URI (see mongoc_uri_t <>) the retry behavior does not apply.

PARAMETERS

database: A mongoc_database_t <>.

       • opts: A bson_t <https://www.mongoc.org/libbson/current/bson_t.html> containing additional options.

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

       • 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   database,   and   use
         mongoc_client_session_append()   <>   to   add   the   session  to  opts.  See  the  example  code  for
         mongoc_client_session_t <>.

       • 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.

       For  a  list  of  all  options,  see the MongoDB Manual entry on the listCollections command <https://www
       .mongodb.com/docs/manual/reference/command/listCollections/>.

ERRORS

       Use mongoc_cursor_error() <> on the returned cursor to check for errors.

RETURNS

       This  function  returns  a   newly   allocated   mongoc_cursor_t   <>   that   should   be   freed   with
       mongoc_cursor_destroy()  <> when no longer in use. The returned mongoc_cursor_t <> is never NULL, even on
       error. The user must call mongoc_cursor_next() <> on the  returned  mongoc_cursor_t  <>  to  execute  the
       initial command.

       Cursor errors can be checked with mongoc_cursor_error_document() <>. It always fills out the bson_error_t
       <https://www.mongoc.org/libbson/current/bson_error_t.html>  if an error occurred, and optionally includes
       a server reply document if the error occurred server-side.

       Warning:
          Failure to handle the result of this function is a programming error.

       In the returned cursor each result corresponds to the server's representation of  a  collection  in  this
       database.

       The    cursor    functions   mongoc_cursor_set_limit()   <>,   mongoc_cursor_set_batch_size()   <>,   and
       mongoc_cursor_set_max_await_time_ms() <> have no use on the returned cursor.

EXAMPLES

          {
             bson_t opts = BSON_INITIALIZER;
             bson_t name_filter;
             const bson_t *doc;
             bson_iter_t iter;
             bson_error_t error;
             mongoc_cursor_t *cursor;

             BSON_APPEND_DOCUMENT_BEGIN (&opts, "filter", &name_filter);
             /* find collections with names like "abbbbc" */
             BSON_APPEND_REGEX (&name_filter, "name", "ab+c", NULL);
             bson_append_document_end (&opts, &name_filter);

             cursor = mongoc_database_find_collections_with_opts (database, &opts);
             while (mongoc_cursor_next (cursor, &doc)) {
                bson_iter_init_find (&iter, doc, "name");
                printf ("found collection: %s\n", bson_iter_utf8 (&iter, NULL));
             }

             if (mongoc_cursor_error (cursor, &error)) {
                fprintf (stderr, "%s\n", error.message);
             }

             mongoc_cursor_destroy (cursor);
             bson_destroy (&opts);
          }

       See also:
          mongoc_database_get_collection_names_with_opts() <>

Author

       MongoDB, Inc

Copyright

       2009-present, MongoDB, Inc.

2.2.1                                             Dec 11, 2025     MONGOC_DATABASE_FIND_COLLECTIONS_WITH_OPTS(3)