Aller au contenu

Service SQL IBM i (AS/400) · Vue

QSYS2.SYSLIMITS

Limites système atteintes (détaillé)

Vue détaillée des limites système enregistrées : valeur courante, valeur maximale, travail, utilisateur et objet concernés, pour surveiller la santé du système.

À quoi ça sert

SYSLIMITS restitue les limites que le système a enregistrées lorsqu'une valeur approche d'un seuil. Chaque ligne donne la catégorie et le type de limite, l'identifiant (LIMIT_ID), la valeur courante (CURRENT_VALUE), la valeur maximale lorsqu'elle est connue, l'horodatage et l'objet concerné (bibliothèque, objet, membre, chemin IFS).

Par rapport à SYSLIMITS_BASIC, la vue détaillée ajoute des informations sur le travail à l'origine de l'événement : statut, priorité, sous-système, CPU consommé, stockage temporaire, texte de l'instruction SQL et identifiants du client.

On s'en sert pour anticiper les problèmes de dimensionnement, comme une table qui grossit trop, avant qu'ils ne provoquent une erreur en production. L'exemple d'IBM sélectionne les plus grosses tables en filtrant sur un LIMIT_ID.

Résultat réel sur un IBM i 7.5

Ce que nous avons exécuté :

WITH X AS (SELECT ROW_NUMBER() 
            OVER(PARTITION BY SYSTEM_SCHEMA_NAME, 
                 SYSTEM_OBJECT_NAME, SYSTEM_TABLE_MEMBER ORDER BY 
                CURRENT_VALUE DESC NULLS LAST) AS R, U.* 
            FROM QSYS2.SYSLIMITS U 
            WHERE LIMIT_ID = 15000) 
        SELECT LAST_CHANGE_TIMESTAMP, SYSTEM_SCHEMA_NAME, 
          SYSTEM_OBJECT_NAME, SYSTEM_TABLE_MEMBER, 
        CURRENT_VALUE 
        FROM X WHERE R = 1 
        ORDER BY CURRENT_VALUE DESC

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

LAST_CHANGE_TIMESTAMP Horodatage de dernière modification SYSTEM_SCHEMA_NAME Nom système de la bibliothèque SYSTEM_OBJECT_NAME Nom système de l'objet SYSTEM_TABLE_MEMBER Membre de la table (nom système) CURRENT_VALUE Valeur courante
2026-09-18 11:50:21.625983 BIBAPP285 LIGNECDE LIGNECDE 3121035
2026-09-18 12:04:56.105785 BIBAPP285 HISTOCDE HISTOCDE 1108800
2026-09-18 14:20:19.398679 BIBAPP285 MOUVSTK MOUVSTK 603712
2026-09-25 15:48:49.190323 QTEMP QIBM_SFD QIBM_SFD 600000
2026-09-18 11:49:48.831571 BIBAPP285 COMMANDE COMMANDE 103759

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

Passer en revue les plus grosses tables des limites système.

-- Description: Review the largest tables in System Limits 
 WITH X AS (SELECT ROW_NUMBER() 
            OVER(PARTITION BY SYSTEM_SCHEMA_NAME, 
                 SYSTEM_OBJECT_NAME, SYSTEM_TABLE_MEMBER ORDER BY 
                CURRENT_VALUE DESC NULLS LAST) AS R, U.* 
            FROM QSYS2.SYSLIMITS U 
            WHERE LIMIT_ID = 15000) 
        SELECT LAST_CHANGE_TIMESTAMP, SYSTEM_SCHEMA_NAME, 
          SYSTEM_OBJECT_NAME, SYSTEM_TABLE_MEMBER, 
        CURRENT_VALUE 
        FROM X WHERE R = 1 
        ORDER BY CURRENT_VALUE DESC;

Bon à savoir

Les limites ne sont enregistrées que lorsque le système les juge atteintes : une vue vide ne prouve pas l'absence de table volumineuse. Filtrez sur LIMIT_ID et prenez la ligne la plus récente par objet, comme le fait l'exemple d'IBM.

Colonnes renvoyées (33)

Afficher les 33 colonnes
ColonneTypeSignification
LAST_CHANGE_TIMESTAMP TIMESTAMP Horodatage de dernière modification
LIMIT_CATEGORY VARCHAR(15) Catégorie de la limite
LIMIT_TYPE VARCHAR(7) Type de limite
SIZING_NAME VARCHAR(128) Nom de la limite de dimensionnement
COMMENTS VARCHAR(2000) Commentaires
USER_NAME VARCHAR(10) Nom du profil utilisateur
CURRENT_VALUE BIGINT Valeur courante
MAXIMUM_VALUE DECIMAL(21, 0) Valeur maximale
JOB_NAME VARCHAR(28) Nom du travail
JOB_STATUS CHAR(10) Statut du travail
ACTIVE_JOB_STATUS CHAR(4) Statut du travail actif
RUN_PRIORITY INTEGER Priorité d'exécution
SBS_NAME CHAR(10) Nom du sous-système
CPU_USED BIGINT CPU utilisé
TEMP_STORAGE_USED_MB INTEGER Stockage temporaire utilisé (Mo)
AUX_IO_REQUESTED BIGINT Nombre d'opérations d'E/S auxiliaires demandées
PAGE_FAULTS BIGINT Nombre de défauts de page
CLIENT_WRKSTNNAME CHAR(255) Nom du poste de travail client
CLIENT_APPLNAME CHAR(255) Nom de l'application cliente
CLIENT_ACCTNG CHAR(255) Information de comptabilisation du client
CLIENT_PROGRAMID CHAR(255) Identifiant du programme client
CLIENT_USERID CHAR(255) Identifiant utilisateur du client
SQL_STATEMENT_TEXT VARCHAR(10000) Texte de l'instruction SQL
SCHEMA_NAME VARCHAR(128) Nom du schéma
OBJECT_NAME VARCHAR(128) Nom de l'objet
SYSTEM_SCHEMA_NAME VARCHAR(10) Nom système de la bibliothèque
SYSTEM_OBJECT_NAME VARCHAR(30) Nom système de l'objet
SYSTEM_TABLE_MEMBER VARCHAR(10) Membre de la table (nom système)
IFS_PATH_NAME DBCLOB Chemin dans l'IFS
OBJECT_TYPE VARCHAR(7) Type de l'objet
SQL_OBJECT_TYPE VARCHAR(9) Type d'objet SQL
ASP_NUMBER SMALLINT Numéro de l'ASP
LIMIT_ID INTEGER Identifiant de la limite