Freigeben über


sys.dm_change_feed_errors (Transact-SQL)

Gilt für: SQL Server 2022 (16.x) Azure SQL-Datenbank Azure Synapse Analytics Warehouse in microsoft Fabric SQL-Datenbank in Microsoft Fabric

Gibt aktuelle Fehler aus den Änderungsfeed-, Momentaufnahmen- oder inkrementellen Änderungsveröffentlichungsprozessen zurück.

Diese dynamische Verwaltungsansicht wird für Folgendes verwendet:

Spaltenname Datentyp BESCHREIBUNG
session_id int Dies ist die session_id, die im Verlaufscache des Protokolllesers verwaltet wird.
source_task tinyint ID des internen Änderungsfeedtasks.
0 = UNDEFINED
1 = TIMER
2 = CAPTURE
3 = PUBLISH
4 = COMMIT
5 = SNAPSHOT
table_id int Die object_id der relevanten Tabelle.
table_group_id uniqueidentifier Der eindeutige Bezeichner der Tabellengruppe. Dies ist eine GUID, die vom Setupflow generiert wird.
capture_phase_number int Überprüfungsphase des Protokolllesers. Wenn der Aufzeichnungsauftrag abgeschlossen ist und der Veröffentlichungs-/Commitvorgang noch ausgeführt wird, verbleibt die Phase in der letzten Überprüfung (Batchverarbeitungsphase 7). Weitere Informationen finden Sie unter batch_processing_phase in sys.dm_change_feed_log_scan_sessions. Gilt nicht für Momentaufnahmen.
entry_time datetime Datum und Uhrzeit der Protokollierung des Fehlers. Dieser Wert entspricht dem Timestamp im SQL-Fehlerprotokoll. In SQL Server wird dieser Wert in der lokalen Zeitzone angegeben. In Azure SQL-Datenbank erfolgt die Angabe in der Zeitzone UTC.
error_number int ID der Fehlermeldung.
error_severity int Schweregrad des Fehlers, der zwischen 1 und 25 liegen kann.
error_state int Zustandsnummer des Fehlers.
error_message nvarchar(1024) Meldungstext des Fehlers.
batch_start_lsn nvarchar(23) LSN-Anfangswert der Zeilen, die beim Auftreten des Fehlers verarbeitet wurden.

0 = der Fehler in einer Protokollscansitzung nicht aufgetreten ist.
batch_end_lsn nvarchar(23) LSN-Endwert der Zeilen, die beim Auftreten des Fehlers verarbeitet wurden.

0 = der Fehler in einer Protokollscansitzung nicht aufgetreten ist.
tran_begin_lsn nvarchar(23) Begin_lsn des Transaktionsfehlers. Lautet NULL für Momentaufnahmefehler.
tran_commit_lsn nvarchar(23) Commit-LSN für die Änderungszeile in dem Änderungsdatenrowset, in dem der Fehler aufgetreten ist. Lautet NULL für Momentaufnahmefehler.
sequence_value nvarchar(23) LSN-Wert der Zeilen, die beim Auftreten des Fehlers verarbeitet wurden.

0 = der Fehler in einer Protokollscansitzung nicht aufgetreten ist.
command_id int Befehls-ID aus der Änderungszeile, die nicht veröffentlicht werden konnte. Lautet NULL für Momentaufnahmefehler.

Hinweise

Dieser DMV zeigt Fehler aus den letzten 32 Sitzungen an. Dabei können für eine Sitzung mehrere Fehler aufgeführt werden, z. B. Wiederholungsversuche bei Zielzonenfehlern. Außerdem werden Fehler angezeigt, die beim Veröffentlichen von Momentaufnahmen und inkrementellen Änderungen aufgetreten sind.

Berechtigungen

Erfordert DIE BERECHTIGUNG "DATENBANKSTATUS ANZEIGEN" oder "DATENBANKLEISTUNGSSTATUS ANZEIGEN", um die sys.dm_change_feed_errors dynamische Verwaltungsansicht abzufragen. Weitere Informationen zu Berechtigungen in dynamischen Verwaltungssichten finden Sie unter Dynamische Verwaltungssichten und -funktionen.

In der Fabric SQL-Datenbank muss ein Benutzer VIEW DATABASE STATE in der Datenbank erhalten, um diesen DMV abzufragen. Oder ein Mitglied einer beliebigen Rolle, die der Fabric-Arbeitsbereich abfragen kann, kann diesen DMV abfragen.

Beispiele

Verwenden Sie sys.dm_change_feed_errors diese Option, um nach aktuellen Fehlern zu suchen.

SELECT * 
FROM sys.dm_change_feed_errors 
ORDER BY entry_time DESC;