Quando si aggiorna Connections è molto probabile che sia necessario migrare i DB , visto che il requisito viene aggiornato a DB2 11.1 .
Una possibilità per spostare i db è quella del backup & restore , ma le best practice in caso non si sia sicuri dello stato dei db è quello di spostare il contenuto dei db con l'utility dbt.jar (a questa pagina la documentazione completa) .
In questa fase , ho avuto 2 problemi differenti che ho risolto nei modi sottostanti:
Opnact
Il db delle activity dopo alcuni minuti di trasferimento falliva con errore segeunte:
Transferring table --{ ACTIVITIES.OA_NODE}-- to table --{ACTIVITIES.OA_NODE }--ERROR: Error validating data. The number of values is not equal to the number of columns in the destination table OA_NODEERROR: The number of values is 38 while the number of columns is 37 error.executing.transfer
com.ibm.wps.config.DatabaseTransferException: Column number mismatch
at com.ibm.wps.config.db.util.RowHelper.updatePreparedStatement(RowHelper.java:271)
at com.ibm.wps.config.db.transfer.DefaultTableHandler.execute(DefaultTableHandler.java:106)
at com.ibm.wps.config.db.transfer.TransferEngine.execute(TransferEngine.java:70)
at com.ibm.wps.config.db.transfer.CmdLineTransfer.execute(CmdLineTransfer.java:96)
at com.ibm.wps.config.db.transfer.CmdLineTransfer.main(CmdLineTransfer.java:43)
Il numero delle colonne in una tabella non tornava, dopo aver verificato la correttezza della versione dei db , ho trovato la conferma e la soluzione grazie alla community (grazie Michele ! ) .
prima della migrazione ho proceduto a creare la colonna mancante nel db di destinazione
db2 connect to opnact
db2 ALTER TABLE ACTIVITIES.OA_NODE ADD COLUMN OWNERMEMBERUUID CHAR(36) NULL;
db2 reorg table ACTIVITIES.OA_NODE
db2 disconnect opnact
poi dopo migrazione ho provveduto alla sua eliminazione
db2 connect to opnact
db2 ALTER TABLE ACTIVITIES.OA_NODE DROP COLUMN OWNERMEMBERUUID
db2 reorg table ACTIVITIES.OA_NODE
db2 disconnect opnact
la soluzione è stata confermata dal supporto IBM , ma in caso di problema analogo vi invito a chiedere conferma al supporto per assicurarvi che il caso sia il medesimo.
METRICS
Metrics dopo alcuni minuti falliva con il seguente errore
Transferring table --{ METRICS.F_USER_EVENT_COUNT}-- to table --{METRICS.F_USER_EVENT_COUNT }--error.executing.transfer
err.dbtransfer.exception.labelclass com.ibm.db2.jcc.am.BatchUpdateException: [jcc][t4][102][10040][4.24.92] Batch failure. The batch was submitted, but at least one exception occurred on an individual member of the batch.
Use getNextException() to retrieve the exceptions for specific batched elements. ERRORCODE=-4229, SQLSTATE=null
com.ibm.db2.jcc.am.BatchUpdateException: [jcc][t4][102][10040][4.24.92] Batch failure.
The batch was submitted, but at least one exception occurred on an individual member of the batch.
Use getNextException() to retrieve the exceptions for specific batched elements. ERRORCODE=-4229, SQLSTATE=null
at com.ibm.db2.jcc.am.b6.a(b6.java:502)
at com.ibm.db2.jcc.am.Agent.endBatchedReadChain(Agent.java:434)
at com.ibm.db2.jcc.am.k4.a(k4.java:5420)
at com.ibm.db2.jcc.am.k4.c(k4.java:4998)
at com.ibm.db2.jcc.am.k4.executeBatch(k4.java:3052)
at com.ibm.wps.config.db.transfer.DefaultTableHandler.execute(DefaultTableHandler.java:131)
at com.ibm.wps.config.db.transfer.TransferEngine.execute(TransferEngine.java:70)
at com.ibm.wps.config.db.transfer.CmdLineTransfer.execute(CmdLineTransfer.java:96)
at com.ibm.wps.config.db.transfer.CmdLineTransfer.main(CmdLineTransfer.java:43)
in questo caso mi sono reso conto che non avevo ancora attivato i log di transazione sul db , ho ricreato il db Metrics dal wizard, attivato i log di transazione ed ho rimigrato il db con successo.
Nessun commento:
Posta un commento