From d04c8300d05bfec2ca614548907fb15325f2833f Mon Sep 17 00:00:00 2001 From: finnigd <138986077+finnigd@users.noreply.github.com> Date: Wed, 9 Apr 2025 19:32:40 +1200 Subject: [PATCH] Added link to Replication Log Reader Agent documentation Added hyperlink to Replication Log Reader Agent documentation. Absent this link, I found this warning very difficult to understand as the context of where this parameter is used/applied is not made clear on the page. This hyperlink quickly explains the context and application of the warning. --- .../track-changes/about-change-data-capture-sql-server.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/relational-databases/track-changes/about-change-data-capture-sql-server.md b/docs/relational-databases/track-changes/about-change-data-capture-sql-server.md index cb1bf281b71..15c9911abb3 100644 --- a/docs/relational-databases/track-changes/about-change-data-capture-sql-server.md +++ b/docs/relational-databases/track-changes/about-change-data-capture-sql-server.md @@ -105,8 +105,8 @@ The capture process responsible for populating the change table accommodates a f The capture process is also used to maintain history on the DDL changes to tracked tables. The DDL statements that are associated with change data capture make entries to the database transaction log whenever a change data capture-enabled database or table is dropped or columns of a change data capture-enabled table are added, modified, or dropped. These log entries are processed by the capture process, which then posts the associated DDL events to the cdc.ddl_history table. You can obtain information about DDL events that affect tracked tables by using the stored procedure [sys.sp_cdc_get_ddl_history](../system-stored-procedures/sys-sp-cdc-get-ddl-history-transact-sql.md). > [!WARNING] -> - **MaxCmdsInTran** was not designed to always be turned on. It exists to work around cases where someone accidentally performed a large number of DML operations in a single transaction (causing a delay in the distribution of commands until the entire transaction is in the distribution database, locks being held, etc.). If you routinely fall into this situation, review your application logic to find ways to reduce the transaction size. -> - **MaxCmdsInTran** is not supported if the given publication database has both CDC and replication enabled. Using **MaxCmdsInTran** in this configuration may lead to data loss in CDC change tables. It may also cause PK errors if the **MaxCmdsInTran** parameter is added and removed while replicating a large Transaction. +> - [**MaxCmdsInTran**](../replication/agents/replication-log-reader-agent.md#-maxcmdsintran-number_of_commands) was not designed to always be turned on. It exists to work around cases where someone accidentally performed a large number of DML operations in a single transaction (causing a delay in the distribution of commands until the entire transaction is in the distribution database, locks being held, etc.). If you routinely fall into this situation, review your application logic to find ways to reduce the transaction size. +> - [**MaxCmdsInTran**](../replication/agents/replication-log-reader-agent.md#-maxcmdsintran-number_of_commands) is not supported if the given publication database has both CDC and replication enabled. Using **MaxCmdsInTran** in this configuration may lead to data loss in CDC change tables. It may also cause PK errors if the **MaxCmdsInTran** parameter is added and removed while replicating a large Transaction. ## Agent jobs