Provided by: libmongoc-doc_1.15.0-1_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_command

       · mongoc_client_command_simple

       · mongoc_database_command

       · mongoc_database_command_simple

       · mongoc_collection_command

       · mongoc_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        │ By   default,    writes    block │
               │(1)                                   │ 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 │
               │(0)                                   │ does 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