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

NAME

       mongoc_write_concern_t - mongoc_write_concern_t

       Write Concern abstraction

SYNOPSIS

       mongoc_write_concern_t  tells  the  driver  what  level  of acknowledgement to await from the server. The
       default, MONGOC_WRITE_CONCERN_W_DEFAULT, is right for the great majority of applications.

       You can specify a  write  concern  on  connection  objects,  database  objects,  collection  objects,  or
       per-operation.  Data-modifying  operations typically use the write concern of the object they operate on,
       and check the server response  for  a  write  concern  error  or  write  concern  timeout.  For  example,
       mongoc_collection_drop_index uses the collection's write concern, and a write concern error or timeout in
       the response is considered a failure.

       Exceptions to this principle are the generic command functions:

       • mongoc_client_commandmongoc_client_command_simplemongoc_database_commandmongoc_database_command_simplemongoc_collection_commandmongoc_collection_command_simple

       These  generic  command  functions  do not automatically apply a write concern, and they do not check the
       server response for a write concern error or write concern timeout.

       See Write Concern on the MongoDB website for more information.

WRITE CONCERN LEVELS

       Set the write concern level with mongoc_write_concern_set_w.
                  ┌───────────────────────────────────────┬───────────────────────────────────────┐
                  │ MONGOC_WRITE_CONCERN_W_DEFAULT (1)    │ By  default,  writes  block  awaiting │
                  │                                       │ acknowledgement     from     MongoDB. │
                  │                                       │ Acknowledged  write  concern   allows │
                  │                                       │ clients  to  catch network, duplicate │
                  │                                       │ key, and other errors.                │
                  ├───────────────────────────────────────┼───────────────────────────────────────┤
                  │ MONGOC_WRITE_CONCERN_W_UNACKNOWLEDGED │ With this write concern, MongoDB does │
                  │ (0)                                   │ not acknowledge the receipt of  write │
                  │                                       │ operation.  Unacknowledged is similar │
                  │                                       │ to errors  ignored;  however,  mongoc │
                  │                                       │ attempts   to   receive   and  handle │
                  │                                       │ network errors when possible.         │
                  ├───────────────────────────────────────┼───────────────────────────────────────┤
                  │ MONGOC_WRITE_CONCERN_W_MAJORITY       │ Block  until   a   write   has   been │
                  │ (majority)                            │ propagated to a majority of the nodes │
                  │                                       │ in the replica set.                   │
                  ├───────────────────────────────────────┼───────────────────────────────────────┤
                  │ n                                     │ Block   until   a   write   has  been │
                  │                                       │ propagated to at least n nodes in the │
                  │                                       │ replica set.                          │
                  └───────────────────────────────────────┴───────────────────────────────────────┘

DEPRECATIONS

       The  write  concern  MONGOC_WRITE_CONCERN_W_ERRORS_IGNORED  (value  -1)  is  a  deprecated  synonym   for
       MONGOC_WRITE_CONCERN_W_UNACKNOWLEDGED (value 0), and will be removed in the next major release.

       mongoc_write_concern_set_fsync is deprecated.

AUTHOR

       MongoDB, Inc

COPYRIGHT

       2017-present, MongoDB, Inc

1.21.0                                            Feb 09, 2022                         MONGOC_WRITE_CONCERN_T(3)