Aller au contenu

Service SQL IBM i (AS/400) · Fonction table

QSYS2.JOB_LOCK_INFO

Verrous détenus par un travail

Liste les verrous d'objets et d'enregistrements détenus ou attendus par un travail : l'équivalent SQL de l'option des verrous de WRKJOB.

À quoi ça sert

La fonction de table prend un nom de travail (JOB_NAME, la valeur '*' désigne le travail courant) et renvoie une ligne par verrou : catégorie, bibliothèque, nom, type et attribut de l'objet, état et statut du verrou, nombre de verrous, portée, et pour les fichiers base de données, le membre concerné et le type de verrou sur ce membre.

Elle répond aux questions de blocage : quel objet ce travail tient-il verrouillé, sur quoi attend-il. Le paramètre INTERNAL_OBJECTS (défaut NO) permet d'inclure les objets internes, et IGNORE_ERRORS (défaut YES) évite l'échec en cas de travail illisible.

Pour les verrous du point de vue d'un objet plutôt que d'un travail, voir QSYS2.OBJECT_LOCK_INFO, et pour les verrous d'enregistrements QSYS2.RECORD_LOCK_INFO.

Résultat réel sur un IBM i 7.5

Ce que nous avons exécuté :

SELECT * FROM TABLE(QSYS2.JOB_LOCK_INFO('*'))

Ce que l'IBM i a renvoyé le 01/10/2026 (5 lignes au plus) :

LOCK_CATEGORY Catégorie du verrou OBJECT_LIBRARY Bibliothèque de l'objet OBJECT_NAME Nom de l'objet OBJECT_TYPE Type de l'objet OBJECT_ATTRIBUTE Attribut de l'objet LOCK_STATE État du verrou LOCK_STATUS Statut du verrou LOCK_COUNT Nombre de verrous LOCK_SCOPE Portée du verrou MEMBER_LOCKS Verrous sur les membres MEMBER_NAME Nom du membre MEMBER_LOCK_TYPE Type de verrou du membre SPACE_LOCATION_LOCK_OFFSET Décalage du verrou dans l'espace LOCK_SPACE_ID Identifiant de l'espace de verrouillage THREAD_ID Identifiant de l'unité d'exécution THREAD_HANDLE Descripteur de l'unité d'exécution ASP_NAME Nom de l'ASP ASP_NUMBER Numéro de l'ASP OBJECT_LOCK_HANDLE Identifiant de verrou sur l'objet LOCK_REQUEST_HANDLE Descripteur de la demande de verrou
EXTERNAL QSYS2 ESA_INFO *FILE LF *SHRRD HELD 1 JOB 1 NULL NULL NULL NULL NULL NULL *SYSBAS 1 D8E6C3D9D6D7E3D900000000000002E0000E000100079700AFFC08D1815AD0010000011000000000000000000000000000000000000000000000000006000000 D8E6C3D9E2D7E3D900000000000002E0000E000100079700AFFC08D1815AD00100000110000000000C8000000000000000F2377028A9013FC000000000000000
MEMBER QSYS2 ESA_INFO *FILE NULL *SHRRD HELD 1 JOB 0 ESA_INFO MEMBER NULL NULL NULL NULL *SYSBAS 1 D8E6C3D9D6D7E3D900000000000002E0000E000100079700AFFC08D1815AD001000000B000000000000000000000000000000000000000000000000006000000 D8E6C3D9E2D7E3D900000000000002E0000E000100079700AFFC08D1815AD001000000B0000000000C8000000000000000F2377028A9013FC000000000000000
EXTERNAL QSYS2 QASQRESL *FILE LF *SHRRD HELD 1 JOB 1 NULL NULL NULL NULL NULL NULL *SYSBAS 1 D8E6C3D9D6D7E3D900000000000002E0000E000100079700AFFC08D1815AD0010000010000000000000000000000000000000000000000000000000006000000 D8E6C3D9E2D7E3D900000000000002E0000E000100079700AFFC08D1815AD00100000100000000000C8000000000000000F2377028A9013FC000000000000000
MEMBER QSYS2 QASQRESL *FILE NULL *SHRRD HELD 1 JOB 0 QASQRESL MEMBER NULL NULL NULL NULL *SYSBAS 1 D8E6C3D9D6D7E3D900000000000002E0000E000100079700AFFC08D1815AD0010000007000000000000000000000000000000000000000000000000006000000 D8E6C3D9E2D7E3D900000000000002E0000E000100079700AFFC08D1815AD00100000070000000000C8000000000000000F2377028A9013FC000000000000000
EXTERNAL QSYS QGPL *LIB PROD *SHRRD HELD 1 JOB NULL NULL NULL NULL NULL NULL NULL *SYSBAS 1 D8E6C3D9D6D7E3D900000000000002E0000E000100079700AFFC08D1815AD0010000019000000000000000000000000000000000000000000000000006000000 D8E6C3D9E2D7E3D900000000000002E0000E000100079700AFFC08D1815AD00100000190000000000C8000000000000000F2377028A9013FC000000000000000

Données anonymisées : les noms de système, de profils, de bibliothèques, de postes et les adresses IP ont été remplacés. Les objets du schéma JOBISQL sont des objets de démonstration créés pour ce site.

L'exemple d'IBM

Récupérer les informations sur les verrous du travail courant.

-- Description: Retrieve information about locks for the current job.
 SELECT * FROM TABLE(QSYS2.JOB_LOCK_INFO('*'));

Paramètres

ParamètreTypePar défautSignification
JOB_NAME VARCHAR(28) obligatoire Nom du travail
INTERNAL_OBJECTS VARCHAR(3) 'NO' Objets internes
IGNORE_ERRORS VARCHAR(3) 'YES' Ignorer les erreurs

Colonnes renvoyées (20)

Afficher les 20 colonnes
ColonneTypeSignification
LOCK_CATEGORY VARCHAR(23) Catégorie du verrou
OBJECT_LIBRARY VARCHAR(10) Bibliothèque de l'objet
OBJECT_NAME VARCHAR(30) Nom de l'objet
OBJECT_TYPE VARCHAR(7) Type de l'objet
OBJECT_ATTRIBUTE VARCHAR(10) Attribut de l'objet
LOCK_STATE VARCHAR(7) État du verrou
LOCK_STATUS VARCHAR(17) Statut du verrou
LOCK_COUNT INTEGER Nombre de verrous
LOCK_SCOPE VARCHAR(10) Portée du verrou
MEMBER_LOCKS INTEGER Verrous sur les membres
MEMBER_NAME VARCHAR(10) Nom du membre
MEMBER_LOCK_TYPE VARCHAR(11) Type de verrou du membre
SPACE_LOCATION_LOCK_OFFSET BIGINT Décalage du verrou dans l'espace
LOCK_SPACE_ID BINARY(20) Identifiant de l'espace de verrouillage
THREAD_ID BIGINT Identifiant de l'unité d'exécution
THREAD_HANDLE INTEGER Descripteur de l'unité d'exécution
ASP_NAME VARCHAR(10) Nom de l'ASP
ASP_NUMBER INTEGER Numéro de l'ASP
OBJECT_LOCK_HANDLE BINARY(64) Identifiant de verrou sur l'objet
LOCK_REQUEST_HANDLE BINARY(64) Descripteur de la demande de verrou