Lock:Timeout (Ereignisklasse)Lock:Timeout Event Class

Dieses Thema gilt für: JaSQL ServerJaAzure SQL-DatenbankkeineAzure SQL Data Warehouse keine Parallel DatawarehouseTHIS TOPIC APPLIES TO: yesSQL ServeryesAzure SQL DatabasenoAzure SQL Data Warehouse noParallel Data Warehouse

Die Lock:Timeout-Ereignisklasse gibt an, dass für die Anforderung einer Sperre auf einer Ressource, wie beispielsweise eine Seite, ein Timeout eingetreten ist, da eine andere Transaktion eine blockierende Sperre für die angeforderte Ressource aufrechterhält.The Lock:Timeout event class indicates that a request for a lock on a resource, such as a page, has timed out because another transaction is holding a blocking lock on the required resource. Das Timeout wird durch die @@LOCK_TIMEOUT-Systemfunktion ermittelt und kann durch die SET LOCK_TIMEOUT-Anweisung festgelegt werden.Time-out is determined by the @@LOCK_TIMEOUT system function and can be set with the SET LOCK_TIMEOUT statement.

Die Lock:Timeout-Ereignisklasse kann dazu verwendet werden, Bedingungen zu überwachen, die zu Timeouts führen.Use the Lock:Timeout event class to monitor when time-out conditions occur. Diese Informationen sind nützlich, wenn ermittelt werden soll, ob Timeouts eine Auswirkung auf die Leistung der Anwendung haben und welche Objekte daran beteiligt sind.This information is useful to determine if time-outs are significantly affecting the performance of your application, and which objects are involved. Sie können den Anwendungscode überprüfen, von dem diese Objekte geändert werden, um festzustellen, ob Änderungen vorgenommen werden können, die Timeouts minimieren.You can examine the application code that modifies these objects to determine if changes to minimize time-outs can be made.

Lock:Timeout-Ereignisse mit der Dauer 0 sind häufig das Ergebnis interner Sperrenuntersuchungen und weisen nicht unbedingt auf ein Problem hin.Lock:Timeout events with a duration of 0 are commonly the result of internal lock probes and are not necessarily an indication of a problem. Das Lock:Timeout (timeout > 0)-Ereignis kann zum Ignorieren von Timeouts mit der Dauer 0 verwendet werden.The Lock:Timeout (timeout > 0) event can be used to ignore time-outs with a duration of 0.

Lock:Timeout (Ereignisklasse-Datenspalten)Lock:Timeout Event Class Data Columns

DatenspaltennameData column name DatentypData type DescriptionDescription Column IDColumn ID FilterbarFilterable
ApplicationNameApplicationName nvarcharnvarchar Name der Clientanwendung, die die Verbindung mit einer Instanz von SQL ServerSQL Serverhergestellt hat.Name of the client application that created the connection to an instance of SQL ServerSQL Server. Diese Spalte wird mit den Werten aufgefüllt, die von der Anwendung übergeben werden, und nicht mit dem angezeigten Namen des Programms.This column is populated with the values passed by the application rather than the displayed name of the program. 1010 jaYes
BinaryDataBinaryData imageimage ID der LOCK-Ressource.Lock resource identifier. 22 jaYes
ClientProcessIDClientProcessID intint Die ID, die der Hostcomputer dem Prozess zuweist, in dem die Clientanwendung ausgeführt wird.ID assigned by the host computer to the process where the client application is running. Diese Datenspalte wird aufgefüllt, wenn der Client die Clientprozess-ID angibt.This data column is populated if the client provides the client process ID. 99 jaYes
DatabaseIDDatabaseID intint Die ID der Datenbank, in der das Sperrtimeout aufgetreten ist.ID of the database in which the lock time-out occurred. SQL Server ProfilerSQL Server Profiler zeigt den Namen der Datenbank an, wenn die ServerName-Datenspalte in der Ablaufverfolgung aufgezeichnet wird und der Server verfügbar ist. displays the name of the database if the ServerName data column is captured in the trace and the server is available. Der Wert für eine Datenbank kann mithilfe der DB_ID-Funktion ermittelt werden.Determine the value for a database by using the DB_ID function. 33 jaYes
DatabaseNameDatabaseName nvarcharnvarchar Der Name der Datenbank, in der das Timeout auftrat.Name of the database in which the time-out occurred. 3535 jaYes
DurationDuration bigintbigint Verstrichene Zeit (in Mikrosekunden) zwischen der Ausgabe der Sperranforderung und dem Timeout für die Sperre.Amount of time (in microseconds) between the time the lock request was issued and the lock was timed out. 1313 jaYes
EndTimeEndTime datetimedatetime Der Zeitpunkt, zu dem das Ereignis beendet wurde.Time at which the event ended. 1515 jaYes
EventClassEventClass intint Ereignistyp = 27.Type of event = 27. 2727 neinNo
EventSequenceEventSequence intint Die Sequenz eines bestimmten Ereignisses innerhalb der Anforderung.The sequence of a given event within the request. 5151 neinNo
GroupIDGroupID intint ID der Arbeitsauslastungsgruppe, in der das SQL-Ablaufverfolgungsereignis ausgelöst wird.ID of the workload group where the SQL Trace event fires. 6666 jaYes
HostNameHostName nvarcharnvarchar Der Name des Computers, auf dem der Client ausgeführt wird.Name of the computer on which the client is running. Diese Datenspalte wird aufgefüllt, wenn der Hostname vom Client bereitgestellt wird.This data column is populated if the client provides the host name. Der Hostname kann mithilfe der HOST_NAME-Funktion bestimmt werden.To determine the host name, use the HOST_NAME function. 88 jaYes
IntegerData2IntegerData2 intint Nur für Informationszwecke identifiziert.Identified for informational purposes only. Wird nicht unterstützt.Not supported. Künftige Kompatibilität wird nicht garantiert.Future compatibility is not guaranteed. 5555 jaYes
IsSystemIsSystem intint Gibt an, ob das Ereignis bei einem Systemprozess oder einem Benutzerprozess aufgetreten ist.Indicates whether the event occurred on a system process or a user process. 1 = System, 0 = Benutzer.1 = system, 0 = user. 6060 jaYes
LoginNameLoginName nvarcharnvarchar Der Anmeldename des Benutzers ( SQL ServerSQL Server -Sicherheitsanmeldung oder MicrosoftMicrosoft Windows-Anmeldeinformationen im Format DOMAIN\username).Name of the login of the user (either SQL ServerSQL Server security login or the MicrosoftMicrosoft Windows login credentials in the form of DOMAIN\username). 1111 jaYes
LoginSidLoginSid imageimage Sicherheits-ID (SID) des angemeldeten Benutzers.Security identification number (SID) of the logged-in user. Diese Informationen finden Sie in der sys.server_principals-Katalogsicht.You can find this information in the sys.server_principals catalog view. Die SID ist für jede Anmeldung beim Server eindeutig.Each SID is unique for each login in the server. 4141 jaYes
ModeMode intint Der Modus nach dem Timeout.The resulting mode after the time-out.

0 = NULL - Kompatibel mit allen anderen Sperrmodi (LCK_M_NL)0=NULL - Compatible with all other lock modes (LCK_M_NL)

1 = Schemastabilitätssperre (LCK_M_SCH_S)1=Schema Stability lock (LCK_M_SCH_S)

2 = Schemaänderungssperre (LCK_M_SCH_M)2=Schema Modification Lock (LCK_M_SCH_M)

3 = Freigegebene Sperre (LCK_M_S)3=Shared Lock (LCK_M_S)

4 = Updatesperre (LCK_M_U)4=Update Lock (LCK_M_U)

5 = Exklusive Sperre (LCK_M_X)5=Exclusive Lock (LCK_M_X)

6 = Beabsichtigte freigegebene Sperre (LCK_M_IS)6=Intent Shared Lock (LCK_M_IS)

7 = Beabsichtigte Updatesperre (LCK_M_IU)7=Intent Update Lock (LCK_M_IU)

8 = Beabsichtigte exklusive Sperre (LCK_M_IX)8=Intent Exclusive Lock (LCK_M_IX)

9 = Freigegebene Sperre mit beabsichtigter Updatesperre (LCK_M_SIU)9=Shared with intent to Update (LCK_M_SIU)

10 = Freigegebene Sperre mit beabsichtigter exklusiver Sperre (LCK_M_SIX)10=Shared with Intent Exclusive (LCK_M_SIX)

11 = Updatesperre mit beabsichtigter exklusiver Sperre (LCK_M_UIX)11=Update with Intent Exclusive (LCK_M_UIX)

12 = Massenupdatesperre (LCK_M_BU)12=Bulk Update Lock (LCK_M_BU)

13 = Freigegebene Sperren für Schlüsselbereich und Ressource (LCK_M_RS_S)13=Key range Shared/Shared (LCK_M_RS_S)

14 = Freigegebene Sperre für Schlüsselbereich und Updatesperre für Ressource (LCK_M_RS_U)14=Key range Shared/Update (LCK_M_RS_U)

15 = Einfügungssperre für Schlüsselbereich und NULL-Sperre für Ressource (LCK_M_RI_NL)15=Key Range Insert NULL (LCK_M_RI_NL)

16 = Einfügungssperre für Schlüsselbereich und freigegebene Ressourcensperre (LCK_M_RI_S)16=Key Range Insert Shared (LCK_M_RI_S)

17 = Einfügungssperre für Schlüsselbereich und Updatesperre (LCK_M_RI_U)17=Key Range Insert Update (LCK_M_RI_U)

18 = Einfügungssperre für Schlüsselbereich und exklusive Ressourcensperre (LCK_M_RI_X)18=Key Range Insert Exclusive (LCK_M_RI_X)

19 = Exklusive Sperren für Schlüsselbereich und freigegebene Ressource (LCK_M_RX_S)19=Key Range Exclusive Shared (LCK_M_RX_S)

20 = Exklusive Sperren für Schlüsselbereich und Update (LCK_M_RX_U)20=Key Range Exclusive Update (LCK_M_RX_U)

21 = Exklusive Sperren für Schlüsselbereich und Ressource (LCK_M_RX_X)21=Key Range Exclusive Exclusive (LCK_M_RX_X)
3232 jaYes
NTDomainNameNTDomainName nvarcharnvarchar Windows-Domäne, zu der der Benutzer gehört.Windows domain to which the user belongs. 77 jaYes
NTUserNameNTUserName nvarcharnvarchar Windows-Benutzername.Windows user name. 66 jaYes
ObjectIDObjectID intint ID des Objekts, für das ein Timeout durchgeführt wurde (falls verfügbar und anwendbar).ID of the object which was timed out, if available and applicable. 2222 jaYes
ObjectID2ObjectID2 bigintbigint Die ID des verbundenen Objekts oder der verbundenen Entität (sofern verfügbar und anwendbar).ID of the related object or entity, if available and applicable. 5656 jaYes
OwnerIDOwnerID intint 1 = TRANSACTION1=TRANSACTION

2 = CURSOR2=CURSOR

3 = SESSION3=SESSION

4 = SHARED_TRANSACTION_WORKSPACE4=SHARED_TRANSACTION_WORKSPACE

5 = EXCLUSIVE_TRANSACTION_WORKSPACE5=EXCLUSIVE_TRANSACTION_WORKSPACE
5858 jaYes
RequestIDRequestID intint Die ID der Anforderung, die die Anweisung enthält.ID of the request containing the statement. 4949 jaYes
ServerNameServerName nvarcharnvarchar Name der SQL ServerSQL Server -Instanz, für die eine Ablaufverfolgung ausgeführt wird.Name of the instance of SQL ServerSQL Server being traced. 2626 neinNo
SessionLoginNameSessionLoginName nvarcharnvarchar Der Anmeldename des Benutzers, der die Sitzung gestartet hat.Login name of the user who originated the session. Wenn Sie beispielsweise Login1 verwenden, um eine Verbindung mit SQL ServerSQL Server herzustellen, und eine Anweisung als Login2 ausführen, zeigt SessionLoginName den Wert Login1 an, wogegen LoginName den Wert Login2 anzeigt.For example, if you connect to SQL ServerSQL Server using Login1 and execute a statement as Login2, SessionLoginName shows Login1; while LoginName shows Login2. Diese Spalte zeigt sowohl den SQL ServerSQL Server - als auch den Windows-Anmeldenamen an.This column displays both SQL ServerSQL Server and Windows logins. 6464 jaYes
SPIDSPID intint Die ID der Sitzung, in der das Ereignis aufgetreten ist.ID of the session on which the event occurred. 1212 jaYes
StartTimeStartTime datetimedatetime Zeitpunkt, zu dem das Ereignis begonnen hat (falls vorhanden).Time at which the event started, if available. 1414 jaYes
TextDataTextData ntextntext Textwert abhängig von dem Sperrentyp, der zum Zeitpunkt des Timeouts angefordert wurde.Text value dependent on the lock type that was being acquired when the time-out occurred. 11 jaYes
TransactionIDTransactionID bigintbigint Die vom System zugewiesene ID der Transaktion.System-assigned ID of the transaction. 44 jaYes
TypType intint 1 = NULL_RESOURCE1=NULL_RESOURCE

2 = DATABASE2=DATABASE

3 = FILE3=FILE

5 = OBJECT5=OBJECT

6 = PAGE6=PAGE

7 = KEY7=KEY

8 = EXTENT8=EXTENT

9 = RID9=RID

10 = APPLICATION10=APPLICATION

11 = METADATA11=METADATA

12 = AUTONAMEDB12=AUTONAMEDB

13 = HOBT13=HOBT

14 = ALLOCATION_UNIT14=ALLOCATION_UNIT
5757 jaYes

Weitere Informationen finden Sie unterSee Also

sp_trace_setevent (Transact-SQL) sp_trace_setevent (Transact-SQL)
Lock:Timeout (timeout > 0)-Ereignisklasse Lock:Timeout (timeout > 0) Event Class
sys.dm_tran_locks (Transact-SQL)sys.dm_tran_locks (Transact-SQL)