sys.dm_change_feed_log_scan_sessions (Transact-SQL)
Applies to: SQL Server 2022 (16.x) Azure SQL Database Azure Synapse Analytics Warehouse in Microsoft Fabric SQL database in Microsoft Fabric
Returns activity from the SQL change feed.
This dynamic management view is used for:
- The Azure Synapse Link feature for SQL Server instances and Azure SQL Database. For more information, see Manage Azure Synapse Link for SQL Server and Azure SQL Database.
- The Fabric Mirrored Database feature for Azure SQL Database. For more information, see Microsoft Fabric mirrored databases.
- SQL database in Microsoft Fabric. For more information, see SQL database in Microsoft Fabric.
Column name | Data type | Description |
---|---|---|
session_id |
int | ID of the session. 0 = the data returned in this row is an aggregate of all sessions since the instance of SQL Server was last started. |
start_time |
datetime | Time the session began. When session_id = 0, the time aggregated data collection began. |
end_time |
datetime | Time the session ended.NULL = session is active.When session_id = 0, the time the last session ended. |
duration |
int | The duration (in seconds) of the session. 0 = the session does not contain change data capture transactions. When session_id = 0, the sum of the duration (in seconds) of all sessions with change feed transactions. |
batch_processing_phase |
nvarchar(200) | The stage of scan reached in a particular log scan session. The following are the currently implemented phases: 1: Reading configuration 2: First scan, building hash table 3: Second scan 4: Second scan 5: Second scan 6: Schema versioning 7: Last scan, publish and commit. 8: Done |
error_count |
int | Number of errors encountered. When session_id = 0, the total number of errors in all sessions. |
batch_start_lsn |
nvarchar(23) | Starting LSN for the session. When session_id = 0, the starting LSN for the last session. |
currently_processed_lsn |
nvarchar(23) | Current LSN being scanned. When session_id = 0, the current LSN is 0. |
batch_end_lsn |
nvarchar(23) | Ending LSN for the session.NULL = session is active.When session_id = 0, the ending LSN for the last session. |
tran_count |
bigint | Number of change data capture transactions processed. This counter is populated in batch_processing_phase 2.When session_id = 0, the number of processed transactions in all sessions. |
currently_processed_commit_lsn |
nvarchar(23) | LSN of the last commit log record processed. When session_id = 0, the last commit log record LSN for any session. |
currently_processed_commit_time |
datetime | Time the last commit log record was processed. When session_id = 0, the time the last commit log record for any session. |
log_record_count |
bigint | Number of log records scanned. When session_id = 0, number of records scanned for all sessions. |
schema_change_count |
int | Number of data definition language (DDL) operations detected. This counter is populated in batch_processing_phase 6.When session_id = 0, the number of DDL operations processed in all sessions. |
command_count |
bigint | Number of commands processed. When session_id = 0, the number of commands processed in all sessions. |
latency |
int | The difference, in seconds, between end_time and currently_processed_commit_time , in the session. This counter is populated at the end of batch_processing_phase 7.When session_id = 0, the last nonzero latency value recorded by a session. |
empty_scan_count |
int | Number of consecutive sessions that contained no captured transactions. |
failed_sessions_count |
int | Number of sessions that failed. |
Permissions
Requires VIEW DATABASE STATE or VIEW DATABASE PERFORMANCE STATE permission to query the sys.dm_change_feed_log_scan_sessions
dynamic management view. For more information about permissions on dynamic management views, see Dynamic Management Views and Functions.
In Fabric SQL database, a user must be granted VIEW DATABASE STATE in the database to query this DMV. Or, a member of any role the Fabric workspace can query this DMV.