mongoc_collection_create_indexes_with_opts()#
Synopsis#
typedef struct _mongoc_index_model_t mongoc_index_model_t;
mongoc_index_model_t *
mongoc_index_model_new (const bson_t *keys, const bson_t *opts);
void mongoc_index_model_destroy (mongoc_index_model_t *model);
bool
mongoc_collection_create_indexes_with_opts (mongoc_collection_t *collection,
mongoc_index_model_t **models,
size_t n_models,
const bson_t *opts,
bson_t *reply,
bson_error_t *error);
Parameters#
collection
: A mongoc_collection_t.models
: An array ofmongoc_index_model_t *
.n_models
: The number ofmodels
.opts
: Optional options.reply
: An optional location for the server reply to thecreateIndexes
command.error
: An optional location for a bson_error_t orNULL
.
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 toopts
. 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 fromcollection
, and use mongoc_client_session_append() to add the session toopts
. 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.
Additional options passed in opts
are appended to the createIndexes
command. See the MongoDB Manual for createIndexes for all supported options.
If no write concern is provided in opts
, the collection’s write concern is used.
mongoc_index_model_t#
Each mongoc_index_model_t
represents an index to create. mongoc_index_model_new
includes:
keys
Expected to match the form of thekey
field in the createIndexes command.opts
Optional index options appended as a sibling to thekey
field in the createIndexes command.
Description#
This function wraps around the createIndexes command.
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.
See also