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

FreeBSD Manual Pages

  
 
  

home | help
MONGOC_SESSION...AL_CONSISTENCY(3) libmongocMONGOC_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
       operation in the	session	will be	causally ordered  after	 the  previous
       read  or	 write	operation. Set to false	to disable causal consistency.
       See the MongoDB Manual Entry for	Causal Consistency.

       Causal consistency and snapshot reads are mutually exclusive.  Attempt-
       ing   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 par-
       ticipate	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.2				 Apr 12, 202MONGOC_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+14.3.quarterly>

home | help