diff --git a/source/includes/transactionLifetimeLimitSeconds-parameter.rst b/source/includes/transactionLifetimeLimitSeconds-parameter.rst new file mode 100644 index 00000000000..f4ab8602719 --- /dev/null +++ b/source/includes/transactionLifetimeLimitSeconds-parameter.rst @@ -0,0 +1,10 @@ +Starting in MongoDB 5.0, if you change the +:parameter:`transactionLifetimeLimitSeconds` parameter, you must also +change :parameter:`transactionLifetimeLimitSeconds` to the same value on +all config server replica set members. Keeping this value consistent: + +- Ensures the routing table history is retained for at least as long as + the transaction lifetime limit on the shard replica set members. + +- Reduces the transaction retry frequency and therefore improves + performance. \ No newline at end of file diff --git a/source/reference/parameters.txt b/source/reference/parameters.txt index e569b5ea2a3..ec62d8c9d3c 100644 --- a/source/reference/parameters.txt +++ b/source/reference/parameters.txt @@ -4110,11 +4110,11 @@ Transaction Parameters *Default*: 60 Specifies the lifetime of :doc:`multi-document transactions - `. Transactions that exceeds this limit are + `. Transactions that exceed this limit are considered expired and will be aborted by a periodic cleanup process. The cleanup process runs every :parameter:`transactionLifetimeLimitSeconds`/2 seconds or at least - once per every 60 seconds. + once every 60 seconds. The cleanup process helps relieve storage cache pressure. @@ -4138,7 +4138,9 @@ Transaction Parameters To set the parameter for a sharded cluster, the parameter must be modified for all shard replica set members. - + + .. include:: /includes/transactionLifetimeLimitSeconds-parameter.rst + .. parameter:: maxTransactionLockRequestTimeoutMillis .. versionadded:: 4.0 diff --git a/source/release-notes/5.0-compatibility.txt b/source/release-notes/5.0-compatibility.txt index a2144e5426c..58f650a47d0 100644 --- a/source/release-notes/5.0-compatibility.txt +++ b/source/release-notes/5.0-compatibility.txt @@ -337,6 +337,11 @@ If ``auditLog.runtimeConfiguration`` is set to ``false`` and an audit filter config document is present, then a startup warning will be issued but the server will not abort. +Reduce Risk of Stale Chunks in Sharded Transactions +--------------------------------------------------- + +.. include:: /includes/transactionLifetimeLimitSeconds-parameter.rst + General Changes ---------------