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 thecreateIndexescommand.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:
keysExpected to match the form of thekeyfield in the createIndexes command.optsOptional index options appended as a sibling to thekeyfield 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