Aller au contenu

Recette SQL IBM i (AS/400) · Travaux

Les files d'attente des travaux qui ont des travaux en attente

Les files d'attente des travaux qui contiennent des travaux en attente, ou qui sont suspendues : pour comprendre pourquoi un batch soumis ne démarre pas.

Le besoin

Un travail soumis par SBMJOB reste en JOBQ : la file est suspendue, n'est rattachée à aucun sous-système actif, ou son nombre maximal de travaux actifs est atteint. Cette requête montre les trois cas d'un coup.

La requête

SELECT JOB_QUEUE_LIBRARY, JOB_QUEUE_NAME, JOB_QUEUE_STATUS, NUMBER_OF_JOBS,
       SUBSYSTEM_NAME, MAXIMUM_ACTIVE_JOBS, ACTIVE_JOBS
FROM QSYS2.JOB_QUEUE_INFO
WHERE NUMBER_OF_JOBS > 0 OR JOB_QUEUE_STATUS = 'HELD'
ORDER BY NUMBER_OF_JOBS DESC

QSYS2.JOB_QUEUE_INFO donne pour chaque file son statut (RELEASED ou HELD), le nombre de travaux en attente, le sous-système qui la sert et ses limites. Une file avec des travaux mais sans SUBSYSTEM_NAME n'est servie par personne.

Le résultat sur un IBM i 7.5

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

JOB_QUEUE_LIBRARY Bibliothèque de la file d'attente des travaux JOB_QUEUE_NAME Nom de la file d'attente des travaux JOB_QUEUE_STATUS Statut de la file d'attente des travaux NUMBER_OF_JOBS Nombre de travaux SUBSYSTEM_NAME Nom du sous-système MAXIMUM_ACTIVE_JOBS Nombre maximal de travaux actifs ACTIVE_JOBS Nombre de travaux actifs
BIBAPP073 JOBQ1 RELEASED 21 NULL NULL NULL
BIBAPP118 J1BRU HELD 3 QBATCH -1 0
BIBAPP073 JOBQ3 RELEASED 2 NULL NULL NULL
BIBAPP459 J3 RELEASED 2 NULL NULL NULL
LEROY S1 RELEASED 1 NULL NULL NULL

Chez nous, une file contient 21 travaux sans sous-système pour la servir (ils n'ont aucune chance de démarrer), et une autre est suspendue (HELD) avec 3 travaux.

Données anonymisées : les noms de système, de profils, de bibliothèques, de postes et les adresses IP ont été remplacés.

L'adapter à votre système

Pour voir les travaux eux-mêmes, utilisez SYSTOOLS.JOB_QUEUE_ENTRIES ou QSYS2.JOB_INFO(JOB_STATUS_FILTER => '*JOBQ').