@@ -3622,6 +3622,45 @@ Auditing Parameters
3622
3622
Transaction Parameters
3623
3623
~~~~~~~~~~~~~~~~~~~~~~
3624
3624
3625
+ .. parameter:: coordinateCommitReturnImmediatelyAfterPersistingDecision
3626
+
3627
+ .. versionadded:: 5.0
3628
+
3629
+ *Type*: boolean
3630
+
3631
+ *Default*: true
3632
+
3633
+ |mongod-only|
3634
+
3635
+ If ``true``, the :doc:`shard </core/sharded-cluster-shards>`
3636
+ transaction coordinator returns a :ref:`multi-document transaction
3637
+ <transactions-atomicity>` commit decision to the client as soon as
3638
+ the commit is made :term:`durable` with the requested transaction
3639
+ :doc:`write concern </reference/write-concern>`. If the client
3640
+ requested a write concern that is less than
3641
+ :writeconcern:`"majority"`, the commit may roll back after the
3642
+ decision is returned to the client.
3643
+
3644
+ If ``false``, the :doc:`shard </core/sharded-cluster-shards>`
3645
+ transaction coordinator waits for all members to acknowledge a
3646
+ :ref:`multi-document transaction <transactions-atomicity>` commit
3647
+ before returning the commit decision to the client.
3648
+
3649
+ The following example sets
3650
+ :parameter:`coordinateCommitReturnImmediatelyAfterPersistingDecision`
3651
+ to ``false``:
3652
+
3653
+ .. code-block:: javascript
3654
+
3655
+ mongod --setParameter coordinateCommitReturnImmediatelyAfterPersistingDecision=false
3656
+
3657
+ During runtime, you can also set the parameter with the
3658
+ :dbcommand:`setParameter` command:
3659
+
3660
+ .. code-block:: sh
3661
+
3662
+ db.adminCommand( { setParameter: 1, coordinateCommitReturnImmediatelyAfterPersistingDecision: false } )
3663
+
3625
3664
.. parameter:: transactionLifetimeLimitSeconds
3626
3665
3627
3666
.. versionadded:: 4.0
0 commit comments