1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80
| -- Gestionnaire de verrous ---------------------------------
select
V1.[resource_type],
V1.[resource_subtype],
V1.[resource_database_id],
V2.[name] as Trad_resource_database_id,
V1.[resource_description],
V3.[name] as Trad_data_space_id,
V3.[type_desc] as Trad_Type_desc,
V1.[resource_associated_entity_id],
isnull(V4.[name],'') as Trad_Name,
isnull(V4.[type_desc],'') as Trad_type_desc,
V1.[resource_lock_partition],
case V1.[request_mode]
When 'NULL' then 'Aucun Acces n est accorde'
When 'Sch-S' then 'Garantit que l élément d un schéma n est pas supprimé'
When 'Sch-M' then 'Garantit qu aucune autre session ne fait référence à l objet indiqué'
When 'S' then '(Partagé). La session détenant le verrou peut disposer d un accès partagé à la ressource.'
When 'U' then 'Indique qu un verrouillage de mise à jour a été posé sur des ressources qui peuvent finalement être mises à jour'
When 'X' then 'La session détenant le verrou peut disposer d un accès exclusif'
When 'IS' then 'Indique l intention de placer des verrous S sur certaines ressources subordonnées dans la hiérarchie de verrouillage'
When 'IU' then 'Indique l intention de placer des verrous U sur certaines ressources subordonnées dans la hiérarchie de verrouillage'
When 'IX' then 'Indique l intention de placer des verrous X sur certaines ressources subordonnées dans la hiérarchie de verrouillage'
When 'SIU' then 'Signale des accès partagés à une ressource dans le but de poser des verrous de mise à jour sur les ressources subordonnées dans la hiérarchie de verrouillage.'
When 'SIX' then 'Signale des accès partagés à une ressource dans le but de poser des verrous exclusifs sur les ressources subordonnées dans la hiérarchie de verrouillage.'
When 'UIX' then 'verrou de mise à jour sur une ressource dans le but de poser des verrous exclusifs sur les ressources subordonnées dans la hiérarchie de verrouillage.'
When 'BU' then 'Utilisé par les opérations par bloc.'
When 'RangeS_S' then 'Indique une analyse de plage sérialisable.'
When 'RangeS_U' then 'Verrou de groupes de clés partagés et de ressources de mise à jour'
When 'RangeI_N' then 'Verrou d insertion de groupe de clé et de ressources NULL'
When 'RangeI_S' then 'Verrou de conversion de groupes de clés, créé par un chevauchement de verrous RangeI_N et S'
When 'RangeI_U' then 'Verrou de conversion de groupes de clés, créé par un chevauchement de verrous RangeI_N et U'
When 'RangeI_X' then 'Verrou de conversion de groupes de clés, créé par un chevauchement de verrous RangeI_N et X'
When 'RangeX_S' then 'Verrou de conversion de groupes de clés, créé par un chevauchement de verrous RangeI_N et RangeS_S.'
When 'RangeX_U' then 'Verrou de conversion de groupes de clés, créé par un chevauchement de verrous RangeI_N et RangeS_U'
When 'RangeX_X' then 'Verrou de conversion utilisé lors de la mise à jour d une clé dans une étendue.'
end as [request_mode],
V1.[request_type],
V1.[request_status],
V1.[request_reference_count],
V1.[request_lifetime],
V1.[request_session_id],
V5.[host_name],
V5.[login_name],
V1.[request_exec_context_id],
V1.[request_request_id],
case V1.[request_owner_type]
when 'TRANSACTION' then 'TRANSACTION est proprietaire'
when 'CURSOR' then 'CURSOR est proprietaire'
when 'SESSION' then 'SESSION est proprietaire'
when 'SHARED_TRANSACTION_WORKSPACE' then 'SHARED_TRANSACTION_WORKSPACE partie partagée est proprietaire'
when 'EXCLUSIVE_TRANSACTION_WORKSPACE' then 'EXCLUSIVE_TRANSACTION_WORKSPACE Partie exclusive est proprietaire'
end,
V1.[request_owner_id],
isnull(V6.[name],'') as Trad_request_owner_id,
V1.[request_owner_guid],
V1.[request_owner_lockspace_id],
V1.[lock_owner_address],
isnull(V7.wait_duration_ms,'') as wait_duration_ms,
isnull(V7.wait_type,'') as wait_type
from sys.dm_tran_locks V1
inner join sys.databases V2 --<=========================================
on V1.[resource_database_id] = V2.[database_id]
inner join sys.data_spaces V3 --<===================================
on
(case
when V1.[resource_description] = 'data_space_id = 2' then '2'
when V1.[resource_description] = 'data_space_id = 1' then '1'
else V3.data_space_id
end ) = V3.data_space_id
left outer join sys.all_objects V4 --<=================================
on V1.[resource_associated_entity_id] = V4.[object_id]
left outer join sys.dm_exec_sessions V5 --<========================
on V1.[request_session_id] = V5.session_id
left outer join sys.dm_tran_active_transactions V6 --<========
on V1.[request_owner_id] = V6.transaction_id
left outer join sys.dm_os_waiting_tasks V7 --<=============
on V1.[lock_owner_address] = V7.resource_address |
Partager