Delen via


Vergrendeling: Timeout gebeurtenisklasse

Van toepassing op: SQL Server 2016 (13.x) en latere versies Azure SQL DatabaseAzure SQL Managed InstanceSQL database in Microsoft Fabric

De Lock:Timeout gebeurtenisklasse geeft aan dat een verzoek om een lock op een resource, zoals een pagina, is uitgetimed omdat een andere transactie een blokkerende lock op de benodigde resource vasthoudt. Time-out wordt bepaald door de @@LOCK_TIMEOUT systeemfunctie en kan worden ingesteld met de SET LOCK_TIMEOUT-instructie.

Gebruik de Lock:Timeout event class om te monitoren wanneer time-out zich voordoet. Deze informatie is nuttig om te bepalen of time-outs de prestaties van uw applicatie significant beïnvloeden en welke objecten erbij betrokken zijn. Je kunt de applicatiecode die deze objecten aanpast bekijken om te bepalen of er wijzigingen kunnen worden doorgevoerd om time-outs te minimaliseren.

Lock: Time-outgebeurtenissen met een duur van 0 zijn meestal het gevolg van interne lock-probes en zijn niet per se een indicatie van een probleem. Het Lock:Timeout (timeout > 0) evenement kan worden gebruikt om time-outs met een duur van 0 te negeren.

Lock:Timeout Event Class Data Columns

Naam van gegevenskolom Gegevenstype Description Kolom-id Filterbaar
ApplicationName nvarchar Naam van de clienttoepassing die de verbinding met een exemplaar van SQL Server heeft gemaakt. Deze kolom wordt gevuld met de waarden die door de toepassing worden doorgegeven in plaats van de weergegeven naam van het programma. 10 Yes
BinaryData image Vergrendel resource-identificatie. 2 Yes
ClientProcessID int De id die door de hostcomputer is toegewezen aan het proces waarop de clienttoepassing wordt uitgevoerd. Deze datakolom wordt ingevuld als de client de clientproces-ID opgeeft. 9 Yes
DatabaseID int ID van de database waarin de lock-timeout plaatsvond. SQL Server Profiler geeft de naam van de database weer als de kolom ServerName-gegevens wordt vastgelegd in de tracering en de server beschikbaar is. Bepaal de waarde voor een database met behulp van de functie DB_ID. 3 Yes
DatabaseName nvarchar Naam van de database waarin de time-out plaatsvond. 35 Yes
Duur bigint De tijd (in microseconden) tussen het moment dat het slotverzoek werd ingediend en het slot werd getimed. 13 Yes
EndTime datetime Tijd waarop het evenement eindigde. 15 Yes
EventClass int Type evenement = 27. 27 Nee.
GebeurtenisVolgorde int De volgorde van een bepaald evenement binnen het verzoek. 51 Nee.
GroupID int Id van de workloadgroep waarin de SQL Trace-gebeurtenis wordt geactiveerd. 66 Yes
Hostnaam nvarchar Naam van de computer waarop de client wordt uitgevoerd. Deze datakolom wordt ingevuld als de client de hostnaam opgeeft. Om de hostnaam te bepalen, gebruik je de functie HOST_NAME. 8 Yes
IntegerData2 int Alleen ter informatie geïdentificeerd. Wordt niet ondersteund. Toekomstige compatibiliteit is niet gegarandeerd. 55 Yes
IsSysteem int Geeft aan of de gebeurtenis heeft plaatsgevonden in een systeemproces of een gebruikersproces. 1 = systeem, 0 = gebruiker. 60 Yes
Gebruikersnaam nvarchar Naam van de inloggegevens van de gebruiker (ofwel SQL Server-beveiligingslogin of de Microsoft Windows-inloggegevens in de vorm van DOMEIN\gebruikersnaam). 11 Yes
LoginSid image Beveiligingsidentificatienummer (SID) van de aangemelde gebruiker. Je kunt deze informatie vinden in de catalogusweergave van sys.server_principals. Elke SID is uniek voor elke aanmelding op de server. 41 Yes
Wijze int De resulterende modus na de time-out.

0=NULL - Compatibel met alle andere lockmodi (LCK_M_NL)

1=Schema Stabiliteitsslot (LCK_M_SCH_S)

2=Schema Modificatie Slot (LCK_M_SCH_M)

3=Gedeeld slot (LCK_M_S)

4=Update-slot (LCK_M_U)

5=Exclusief slot (LCK_M_X)

6=Intentie Gedeelde Slot (LCK_M_IS)

7=Intent Update Lock (LCK_M_IU)

8=Intentie-exclusieve Slot (LCK_M_IX)

9=Gedeeld met de intentie om te updaten (LCK_M_SIU)

10=Gedeeld met intentie exclusief (LCK_M_SIX)

11=Exclusief Bijwerken met Intentie (LCK_M_UIX)

12=Bulk Update Lock (LCK_M_BU)

13=Sleutelbereik gedeeld/gedeeld (LCK_M_RS_S)

14=Sleutelbereik gedeeld/bijgewerkt (LCK_M_RS_U)

15=Sleutelbereik Invoegen NULL (LCK_M_RI_NL)

16=Gedeeld Sleutelbereik-invoeging (LCK_M_RI_S)

17=Sleutelbereik-invoegupdate (LCK_M_RI_U)

18=Sleutelbereik Invoegsel Exclusief (LCK_M_RI_X)

19=Sleutelbereik Exclusief Gedeeld (LCK_M_RX_S)

20=Exclusieve Update van het Sleutelbereik (LCK_M_RX_U)

21=Key Range Exclusief (LCK_M_RX_X)
32 Yes
NTDomainName nvarchar Windows-domein waartoe de gebruiker behoort. 7 Yes
NTUserName nvarchar Windows-gebruikersnaam. 6 Yes
ObjectID int ID van het object dat werd getimed, indien beschikbaar en van toepassing. 22 Yes
ObjectID2 bigint ID van het gerelateerde object of entiteit, indien beschikbaar en van toepassing. 56 Yes
OwnerID int 1=TRANSACTIE

2=CURSOR

3=SESSIE

4=SHARED_TRANSACTION_WORKSPACE

5=EXCLUSIVE_TRANSACTION_WORKSPACE
58 Yes
RequestID int Id van de aanvraag met de instructie. 49 Yes
Servernaam nvarchar De naam van het exemplaar van SQL Server dat wordt getraceerd. 26 Nee.
SessionLoginName nvarchar Aanmeldingsnaam van de gebruiker die de sessie heeft gestart. Als je bijvoorbeeld verbinding maakt met SQL Server via Login1 en een instructie uitvoert als Login2, toont SessionLoginName Login1; terwijl LoginName Login2 toont. In deze kolom worden zowel SQL Server- als Windows-aanmeldingen weergegeven. 64 Yes
SPID int Id van de sessie waarop de gebeurtenis heeft plaatsgevonden. 12 Yes
StartTime datetime Tijdstip waarop de gebeurtenis is gestart, indien beschikbaar. 14 Yes
Tekstgegevens ntext Tekstwaarde afhankelijk van het slottype dat werd verkregen toen de time-out plaatsvond. 1 Yes
TransactionID bigint Door het systeem toegewezen id van de transactie. 4 Yes
Typologie int 1=NULL_RESOURCE

2=DATABASE

3=BESTAND

5=OBJECT

6=PAGINA

7=SLEUTEL

8=OMVANG

9=RID

10=TOEPASSING

11=METADATA

12=AUTONAMEDB

13=HOBT

14=ALLOCATION_UNIT
57 Yes

Zie ook

sp_trace_setevent (Transact-SQL)
Lock: Time-out (timeout > 0) Eventklasse
sys.dm_tran_locks (Transact-SQL)