Service SQL IBM i (AS/400) · Fonction table
QSYS2.IFS_OBJECT_LOCK_INFO
Verrous sur un objet de l'IFS
Liste les travaux qui détiennent un verrou ou une référence sur un objet de l'IFS donné, avec le mode d'ouverture et de partage.
À quoi ça sert
La fonction de table prend un chemin (PATH_NAME) et renvoie une ligne par travail qui utilise cet objet : nom du travail, nombre d'ouvertures en lecture seule, écriture seule, lecture/écriture ou exécution seule, nombre d'accès partagés, verrous d'attribut, de sauvegarde et de modification de liens, objet extrait et par qui, répertoires courants et racine, références du serveur de fichiers, du serveur NFS et session NetServer.
On l'emploie typiquement quand un fichier ne peut être ni supprimé, ni remplacé, ni sauvegardé parce qu'un travail le garde ouvert : on identifie ainsi le coupable. IGNORE_ERRORS (défaut YES) évite l'échec en cas d'objet illisible.
C'est l'équivalent, côté IFS, de la recherche de verrous sur un objet de bibliothèque. Si l'objet n'est plus utilisé du tout, la fonction ne renvoie aucune ligne.
Résultat réel sur un IBM i 7.5
Ce que nous avons exécuté :
SELECT * FROM TABLE(QSYS2.IFS_OBJECT_LOCK_INFO(PATH_NAME => '/usr/test1'))
Aucune ligne : aucun travail ne verrouillait les fichiers IFS interrogés.
L'exemple d'IBM
Lister tous les travaux qui ont un verrou sur /usr/test1.
-- Description: List all the jobs that have a lock on /usr/test1
SELECT * FROM TABLE(QSYS2.IFS_OBJECT_LOCK_INFO(PATH_NAME => '/usr/test1'));
Paramètres
| Paramètre | Type | Par défaut | Signification |
|---|---|---|---|
PATH_NAME |
DOUBLE-BYTE CHAR LARGE OBJECT | obligatoire | Chemin |
IGNORE_ERRORS |
VARCHAR(3) | 'YES' | Ignorer les erreurs |
Colonnes renvoyées (42)
Afficher les 42 colonnes
| Colonne | Type | Signification |
|---|---|---|
PATH_NAME |
DOUBLE-BYTE CHAR LARGE OBJECT | Chemin |
JOB_NAME |
VARCHAR(28) | Nom du travail |
RO_COUNT |
INTEGER | Nombre d'accès en lecture seule |
WO_COUNT |
INTEGER | Nombre d'ouvertures en écriture seule |
RW_COUNT |
INTEGER | Nombre d'accès en lecture/écriture |
XO_COUNT |
INTEGER | Nombre d'ouvertures en exécution seule |
SHARE_R_COUNT |
INTEGER | Nombre d'accès partagés en lecture |
SHARE_W_COUNT |
INTEGER | Nombre d'accès partagés en écriture |
SHARE_RW_COUNT |
INTEGER | Nombre d'accès partagés en lecture/écriture |
SHARE_NONE_COUNT |
INTEGER | Nombre d'accès sans partage |
ATTRIBUTE_LOCK |
VARCHAR(3) | Verrou d'attribut |
SAVE_LOCK |
VARCHAR(3) | Verrou de sauvegarde |
INTERNAL_SAVE_LOCK |
VARCHAR(3) | Verrou interne de sauvegarde |
LINK_CHANGES_LOCK |
VARCHAR(3) | Verrou sur les modifications de liens |
CHECKED_OUT |
VARCHAR(3) | Objet extrait |
CHECKED_OUT_USER_NAME |
VARCHAR(10) | Nom de l'utilisateur ayant extrait l'objet |
RO_SHARE_R_COUNT |
INTEGER | Nombre d'accès en lecture seule partagés en lecture |
RO_SHARE_W_COUNT |
INTEGER | Nombre d'accès en lecture seule partagés en écriture |
RO_SHARE_RW_COUNT |
INTEGER | Nombre d'accès en lecture seule partagés en lecture/écriture |
RO_SHARE_NONE_COUNT |
INTEGER | Nombre d'accès en lecture seule sans partage |
WO_SHARE_R_COUNT |
INTEGER | Ouvertures en écriture seule avec partage en lecture |
WO_SHARE_W_COUNT |
INTEGER | Ouvertures en écriture seule avec partage en écriture |
WO_SHARE_RW_COUNT |
INTEGER | Ouvertures en écriture seule avec partage lecture et écriture |
WO_SHARE_NONE_COUNT |
INTEGER | Ouvertures en écriture seule sans partage |
RW_SHARE_R_COUNT |
INTEGER | Nombre d'accès en lecture/écriture partagés en lecture |
RW_SHARE_W_COUNT |
INTEGER | Nombre d'accès en lecture/écriture partagés en écriture |
RW_SHARE_RW_COUNT |
INTEGER | Nombre d'accès en lecture/écriture partagés en lecture/écriture |
RW_SHARE_NONE_COUNT |
INTEGER | Nombre d'accès en lecture/écriture sans partage |
XO_SHARE_R_COUNT |
INTEGER | Ouvertures en exécution seule avec partage en lecture |
XO_SHARE_W_COUNT |
INTEGER | Ouvertures en exécution seule avec partage en écriture |
XO_SHARE_RW_COUNT |
INTEGER | Ouvertures en exécution seule avec partage lecture et écriture |
XO_SHARE_NONE_COUNT |
INTEGER | Ouvertures en exécution seule sans partage |
XR_SHARE_R_COUNT |
INTEGER | Ouvertures en lecture et exécution avec partage en lecture |
XR_SHARE_W_COUNT |
INTEGER | Ouvertures en lecture et exécution avec partage en écriture |
XR_SHARE_RW_COUNT |
INTEGER | Ouvertures en lecture et exécution avec partage lecture et écriture |
XR_SHARE_NONE_COUNT |
INTEGER | Ouvertures en lecture et exécution sans partage |
CURRENT_DIRECTORY |
VARCHAR(3) | Répertoire courant |
ROOT_DIRECTORY |
VARCHAR(3) | Répertoire racine |
FILE_SERVER_REFERENCE |
VARCHAR(3) | Référence du serveur de fichiers |
FILE_SERVER_WORKING_DIRECTORY |
VARCHAR(3) | Répertoire de travail du serveur de fichiers |
NFS_SERVER_REFERENCE |
VARCHAR(3) | Référence au serveur NFS |
NETSERVER_SESSION |
CHAR LARGE OBJECT | Session NetServer |