MCH4817
Violation de journal. Code retour &3.
Gravité 40 · Fin anormale du programme ou de la fonction
Cause
Une opération n'a pas pu être effectuée parce qu'une règle journal a fait l'objet d'une violation ou parce qu'une ressource journal a été épuisée. Le port journal est &1. L'objet référencé est &2. Les codes retour et leur signification sont les suivants : Valeur hexadécimale 01
- La journalisation ne peut pas être lancée pour un objet qui peut générer des postes de journal de plus de 16 mégaoctets, à moins que les attributs du port de journal ne soient modifiés de sorte que ce dernier puisse répondre à la demande de création de segments très volumineux. Cet ensemble espace/port de journal ne possède pas cet attribut. Valeur hexadécimale 02
- Un port de journal n'est pas autorisé à passer en mode d'attente si des cycles de validation associés à des objets journalisés dans ce port sont toujours à l'état ouvert. Valeur hexadécimale 03
- L'index indiqué avec les composants internationaux pour Unicode (ICU) ou pour la procédure de zone, ou le vecteur encodé créé avec la clause INCLUDE est trop complexe pour être protégé par la journalisation. Ni une demande de démarrage de journalisation (JRNLOBJ), ni la protection SMAPP ne seront exécutées. L'index contient des références de zone CLOB, BLOB ou DBCLOB qui rendent le journal de maintenance différée associé inapte à gérer des postes de zone clé brut aussi vastes ou complexes que ceux associés à cet index pendant la récupération des index. Valeur hexadécimale 04
- Il a été tenté de mettre fin à la journalisation d'un espace de données cependant qu'un cycle de validation intégrant cet espace était encore actif. La journalisation de l'espace de données n'a pas été interrompue.
Variables du message
Quand le système envoie le message, chaque variable est remplacée par une valeur réelle : un nom d'objet, de bibliothèque, un code...
| Variable | Type | Longueur |
|---|---|---|
| &1 | *SYP |
variable |
| &2 | *SYP |
variable |
| &3 | *HEX |
1 |
Sur votre IBM i
Afficher la description complète du message :
DSPMSGD RANGE(MCH4817) MSGF(QSYS/QCPFMSG)
L'intercepter dans un programme CL, quand il est envoyé comme message d'échappement :
MONMSG MSGID(MCH4817) EXEC(DO)
/* traitement de l'erreur */
ENDDO