L'installation d'un module complémentaire peut échouer si une instruction préparée stockée dans le cache d'instructions préparées du serveur d'applications référence la table de la base de données spécifiée.
Symptômes
L'installation d'un module complémentaire dans une librairie utilisant une base de données DB2 for z/OS échoue. L'installation renvoie un message d'erreur signalant que la table de la base de données est actuellement référencée par une instruction préparée et ne peut pas être modifiée.
Causes
L'installation d'un module complémentaire dans une librairie utilisant
DB2 for z/OS peut échouer lorsqu'une instruction préparée stockée dans le cache d'instructions préparées du serveur d'applications référence la table de base de données affectée. Cette référence maintient une association active à la table référencée et empêche ainsi toute modification de schéma.
Un message d'exception de ressource -904 avec le code anomalie SQLERRMC=00E70081 indique que la table associée à l'instruction ALTER TABLE (DocVersion) est actuellement référencée par une instruction préparée stockée dans le cache d'instructions préparée, et ne peut être modifiée.
2008-10-08T06:25:07.204Z 291E291E API FNRCE0230E - ERROR An error occurred
accessing the database. ErrorCode: -904, Message: 'DB2 SQL Error: SQLCODE=-904,
SQLSTATE=57011,SQLERRMC=00E70081;00000A00;A12BASE.DOCVERSION, DRIVER=3.51.118'
SQL: vargraphic(1200) "\ncom.filenet.api.exception.EngineRuntimeException:
DB_ERROR: An error occurred accessing the database.
ErrorCode: -904, Message: 'DB2 SQL Error: SQLCODE=-904, SQLSTATE=57011,
SQLERRMC=00E70081;00000A00;A12BASE.DOCVERSION, DRIVER=3.51.118'
SQL: "ALTER TABLE DocVersion ADD COLUMN uee8_rmentitydescription vargraphic(1200)"
Résolution de l'incident
Désactivez le cache d'instructions préparées pour la source de données XA de la librairie affectée. En outre, vérifiez que le paramètre de sous-système
DB2 for z/OS CACHEDYN est défini à YES.
Pour désactivez le cache d'instructions préparées pour la source de données XA de la librairie :
- Accédez au cache d'instructions préparées pour la source de données XA de la librairie affectée.
- Notez la taille d'instruction initiale afin de pouvoir la réinitialiser ultérieurement.
- Désactivez le cache d'instructions préparées pour la source de données XA de la librairie affectée en définissant la taille d'instruction à 0.
- Attribuez la valeur YES au paramètre de sous-système DB2 for z/OS CACHEDYN, si nécessaire.
- Installez le module complémentaire.
- Dans le cache d'instructions préparées pour la source de données XA de la librairie affectée, réinitialisez la taille d'instruction à sa valeur initiale.