Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
SQL Server 2025 (17.x) Preview
Use the availability group commit time
server configuration option to specify the group commit time, in milliseconds, for an Always On availability group replica.
Note
The availability group commit time
server configuration option is available starting with SQL Server 2025 (17.x) Preview.
Overview
Changes made inside a transaction aren't visible outside of the transaction until the transaction is committed. The definition of a committed transaction for an Always On availability group involves all synchronous secondary replicas in the availability group acknowledging the hardened commit. After a commit is issued on the primary replica, that fact needs to be propagated quickly across the network to all secondary replicas.
Since SQL Server relies on write-ahead transaction logging to maintain ACID properties of a transaction, changes are first recorded to the transaction log in the form of log blocks. These log blocks are sent, and then applied, to the transaction log of all the secondary replicas.
To improve performance and reduce latency in SQL Server 2016 (13.x) and later versions, SQL Server uses a 10 millisecond delay in an attempt to fill Always On availability group log blocks with multiple commits before sending them to secondary replicas.
SQL Server 2025 (17.x) Preview introduces the availability group commit time
server configuration option to specify the group commit time, in milliseconds, for an availability group replica. For business scenarios where the default value of 10 milliseconds is too long, this option gives SQL Server the ability to group multiple commits into batches within fewer log blocks.
Grouping commits introduces a tradeoff between the efficiency of data replication, and the time it takes to report a successful commit to the issuer:
- On busy systems, grouping commits results in log blocks that are filled with more transactions, which helps avoid network saturation, and the overhead associated with applying a large number of small log blocks on a secondary replica.
- However, there's a 10 millisecond delay before the transaction is applied to the secondary replica, which can be problematic for some business scenarios.
For business scenarios where the default value of 10 milliseconds is too long, you can modify the availability group commit time
server configuration option to a lower value, so that transactions are sent to the secondary replica faster.
Remarks
The default value of
0
indicates that SQL Server uses the default value of 10 ms for the availability group commit time.The
availability group commit time
server configuration option is available when show advanced options is set to1
.