Pergunta
· Maio 9

Erro em consultas após migração de servidor de banco de dados

O nosso sistema funciona normalmente com a versão Iris 2023.2, porém foi necessário mudarmos de serviço de servidor cloud e ao migrar o banco para esse novo servidor e subir nossa aplicação começamos a receber alguns erros, que seguem abaixo:

Caused by: java.sql.SQLException: [SQLCODE: <-400>:<Ocorreu um erro fatal>]
11:12:26,663 INFO  [stdout] (http-/0.0.0.0:8443-17) [Location: <Prepare>]
11:12:26,664 INFO  [stdout] (http-/0.0.0.0:8443-17) [%msg: <Process 161341 failed to compile Cached Query Class %sqlcq.TGDB.cls789 with the following errors:  System:Instance: iris:IRIS, Namespace: TGDB, $Job: 161341
11:12:26,664 INFO  [stdout] (http-/0.0.0.0:8443-17) ERRO #5475: Erro durante a compilação da rotina '%sqlcq.TGDB.cls789'.  Erros:  %sqlcq.TGDB.cls789.cls
11:12:26,664 INFO  [stdout] (http-/0.0.0.0:8443-17) ERROR: %sqlcq.TGDB.cls789.1(20) : <UNDEFINED>fplanar+9^%qaqplansave *pdict("version") : 
11:12:26,664 INFO  [stdout] (http-/0.0.0.0:8443-17) ERRO #5475: Erro durante a compilação da rotina '%sqlcq.TGDB.cls789'.  Erros:  %sqlcq.TGDB.cls789.cls
11:12:26,664 INFO  [stdout] (http-/0.0.0.0:8443-17) ERROR: %sqlcq.TGDB.cls789.1(20) : <UNDEFINED>fplanar+9^%qaqplansave *pdict("version") : >]
11:12:26,664 INFO  [stdout] (http-/0.0.0.0:8443-17) 	at com.intersystems.jdbc.IRISConnection.getServerError(IRISConnection.java:978) ~[na:na]
11:12:26,664 INFO  [stdout] (http-/0.0.0.0:8443-17) 	at com.intersystems.jdbc.IRISConnection.processError(IRISConnection.java:1123) ~[na:na]
11:12:26,664 INFO  [stdout] (http-/0.0.0.0:8443-17) 	at com.intersystems.jdbc.InStream.readMessage(InStream.java:216) ~[na:na]
11:12:26,664 INFO  [stdout] (http-/0.0.0.0:8443-17) 	at com.intersystems.jdbc.InStream.readMessage(InStream.java:183) ~[na:na]
11:12:26,664 INFO  [stdout] (http-/0.0.0.0:8443-17) 	at com.intersystems.jdbc.IRISPreparedStatement.prepareInternal(IRISPreparedStatement.java:597) ~[na:na]
11:12:26,664 INFO  [stdout] (http-/0.0.0.0:8443-17) 	at com.intersystems.jdbc.IRISPreparedStatement.prepare(IRISPreparedStatement.java:558) ~[na:na]
11:12:26,665 INFO  [stdout] (http-/0.0.0.0:8443-17) 	at com.intersystems.jdbc.IRISPreparedStatement.<init>(IRISPreparedStatement.java:23) ~[na:na]
11:12:26,665 INFO  [stdout] (http-/0.0.0.0:8443-17) 	at com.intersystems.jdbc.IRISConnection.getOrCreatePossiblyShardedIRISPreparedStatement(IRISConnection.java:1893) ~[na:na]
11:12:26,665 INFO  [stdout] (http-/0.0.0.0:8443-17) 	at com.intersystems.jdbc.IRISConnection.prepareStatement(IRISConnection.java:1424) ~[na:na]
11:12:26,665 INFO  [stdout] (http-/0.0.0.0:8443-17) 	at sun.reflect.GeneratedMethodAccessor72.invoke(Unknown Source) ~[na:na]
11:12:26,665 INFO  [stdout] (http-/0.0.0.0:8443-17) 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_331]
11:12:26,665 INFO  [stdout] (http-/0.0.0.0:8443-17) 	at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_331]
11:12:26,665 INFO  [stdout] (http-/0.0.0.0:8443-17) 	at net.bull.javamelody.JdbcWrapper$ConnectionInvocationHandler.invoke(JdbcWrapper.java:189) ~[javamelody-core-1.60.0.jar:1.60.0]
11:12:26,665 INFO  [stdout] (http-/0.0.0.0:8443-17) 	at net.bull.javamelody.JdbcWrapper$DelegatingInvocationHandler.invoke(JdbcWrapper.java:286) ~[javamelody-core-1.60.0.jar:1.60.0]
11:12:26,665 INFO  [stdout] (http-/0.0.0.0:8443-17) 	at com.sun.proxy.$Proxy566.prepareStatement(Unknown Source) ~[na:na]
11:12:26,665 INFO  [stdout] (http-/0.0.0.0:8443-17) 	at org.jboss.jca.adapters.jdbc.BaseWrapperManagedConnection.doPrepareStatement(BaseWrapperManagedConnection.java:748) ~[na:na]
11:12:26,665 INFO  [stdout] (http-/0.0.0.0:8443-17) 	at org.jboss.jca.adapters.jdbc.BaseWrapperManagedConnection.prepareStatement(BaseWrapperManagedConnection.java:734) ~[na:na]
11:12:26,665 INFO  [stdout] (http-/0.0.0.0:8443-17) 	at org.jboss.jca.adapters.jdbc.WrappedConnection.prepareStatement(WrappedConnection.java:405) ~[na:na]
11:12:26,665 INFO  [stdout] (http-/0.0.0.0:8443-17) 	at sun.reflect.GeneratedMethodAccessor69.invoke(Unknown Source) ~[na:na]
11:12:26,665 INFO  [stdout] (http-/0.0.0.0:8443-17) 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_331]
11:12:26,665 INFO  [stdout] (http-/0.0.0.0:8443-17) 	at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_331]
11:12:26,665 INFO  [stdout] (http-/0.0.0.0:8443-17) 	at org.springframework.jdbc.datasource.LazyConnectionDataSourceProxy$LazyConnectionInvocationHandler.invoke(LazyConnectionDataSourceProxy.java:376) ~[spring-jdbc-4.1.9.RELEASE.jar:4.1.9.RELEASE]
11:12:26,665 INFO  [stdout] (http-/0.0.0.0:8443-17) 	at com.sun.proxy.$Proxy73.prepareStatement(Unknown Source) ~[na:na]
11:12:26,665 INFO  [stdout] (http-/0.0.0.0:8443-17) 	at org.hibernate.engine.jdbc.internal.StatementPreparerImpl$1.doPrepare(StatementPreparerImpl.java:96) ~[hibernate-core-4.2.19.Final.jar:4.2.19.Final]
11:12:26,665 INFO  [stdout] (http-/0.0.0.0:8443-17) 	at org.hibernate.engine.jdbc.internal.StatementPreparerImpl$StatementPreparationTemplate.prepareStatement(StatementPreparerImpl.java:183) ~[hibernate-core-4.2.19.Final.jar:4.2.19.Final]

Vocês imaginam o que poderia ser o problema? Poderiam me dar algum auxílio?

Desde já muito obrigado.

Product version: IRIS 2023.2
Discussão (8)2
Entre ou crie uma conta para continuar

Vale dar uma olhada na classe %sqlcq.TGDB.cls, na 9ª linha do método fplanar. Aí, o código tenta utilizar o valor guardado na variável pdict("version"), mas ela não foi definida anteriormente, pelo menos não com esse subscript "version".

Talvez seja uma global que já estivesse definida no sistema anterior e ainda não foi definida no novo. 

Espero ter ajudado, se não, pode compartilhar mais detalhes para tentarmos descobrir o que tá pegando!

Boa tarde, Igor. 
Pode passar mais informações a respeito dessa troca de ambiente, teve alteração de sistema operacional? teve migração da versão do IRIS também?   Como foi feito a montagem do banco no novo servidor ?

O erro está ocorrendo nas rotinas de consultas em cache.   

Existe uma documentação com instruções para migração de versão, se for o seu caso sugiro verificar:  https://docs.intersystems.com/iris20232/csp/docbook/DocBook.UI.Page.cls?...