Skip site navigation (1)Skip section navigation (2)

  
 
  

home | help
MONGOC_SESSION...AL_CONSISTENCY(3)  libmongoc MONGOC_SESSION...AL_CONSISTENCY(3)

SYNOPSIS
	void
	mongoc_session_opts_set_causal_consistency (mongoc_session_opt_t *opts,
						    bool causal_consistency);

     Configure	causal consistency in a session. If true (the default), each op-
     eration in the session will be causally ordered after the previous read  or
     write  operation.	Set to false to disable causal consistency. See the Mon-
     goDB Manual Entry for Causal Consistency.

     Causal consistency and snapshot reads are mutually exclusive. Attempting to
     set    both    to	  true	  will	  result    in	   an	  error.     See
     mongoc_session_opts_set_snapshot().

     Unacknowledged  writes  are not causally consistent. If you execute a write
     operation	with  a  mongoc_write_concern_t  on  which   you   have   called
     mongoc_write_concern_set_w() with a value of 0, the write does not partici-
     pate in causal consistency.

PARAMETERS
     * opts: A mongoc_session_opt_t.

     * causal_consistency: True or false.

EXAMPLE
	mongoc_client_t *client;
	mongoc_session_opt_t *session_opts;
	mongoc_client_session_t *client_session;
	mongoc_collection_t *collection;
	bson_t insert_opts = BSON_INITIALIZER;
	bson_t *doc;
	bson_error_t error;
	bool r;

	client = mongoc_client_new ("mongodb://example/?appname=session-opts-example");
	mongoc_client_set_error_api (client, 2);

	session_opts = mongoc_session_opts_new ();
	mongoc_session_opts_set_causal_consistency (session_opts, false);
	client_session = mongoc_client_start_session (client, session_opts, &error);
	mongoc_session_opts_destroy (session_opts);

	if (!client_session) {
	   fprintf (stderr, "Failed to start session: %s\n", error.message);
	   abort ();
	}

	collection = mongoc_client_get_collection (client, "test", "collection");
	doc = BCON_NEW ("_id", BCON_INT32 (1));
	r = mongoc_client_session_append (client_session, &insert_opts, NULL);
	if (!r) {
	   fprintf (stderr, "mongoc_client_session_append failed: %s\n", error.message);
	   abort ();
	}

	r = mongoc_collection_insert_one (
	   collection, doc, &insert_opts, NULL /* reply */, &error);

	if (!r) {
	   fprintf (stderr, "Insert failed: %s\n", error.message);
	   abort ();
	}

AUTHOR
     MongoDB, Inc

COPYRIGHT
     2009-present, MongoDB, Inc.

1.30.8				  Aug 27, 2026MONGOC_SESSION...AL_CONSISTENCY(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=mongoc_session_opts_set_causal_consistency&sektion=3&manpath=FreeBSD+Ports+15.1.quarterly>

home | help