Details
-
Bug
-
Resolution: Done
-
Critical
-
8.12.11.6_4
-
None
Description
When using Infinispan hotrod translator, user defines DDL metadata in source model and let Teiid generate the protobuf and marshaller.
When JDG is restarted after the VDB is deployed, then the VDB needs to be redeployed because otherwise there is not a Message descriptor registered on the JDG side.
source model
<model name="Source" type="PHYSICAL" visible="true"> <source name="jdg7-source" translator-name="infinispan-hotrod" connection-jndi-name="java:/jdg71HotrodDS" /> <metadata type="DDL"><![CDATA[ CREATE FOREIGN TABLE SmallA ( StringKey string PRIMARY KEY, IntKey integer ) OPTIONS(UPDATABLE true, "teiid_ispn:cache" 'cache_name'); ]]> </metadata> <metadata type = "NATIVE"/> </model>
Query performed repeatedly:
query
SELECT * FROM SMallA
When query is performed after vdb is deployed, it runs fine.
When JDG is restarted after the VDB was deployed, the query consecutively fails with:
error
15:49:56,459 WARN [org.infinispan.client.hotrod.impl.protocol.Codec21] (Worker0_QueryProcessorQueue66) ISPN004005: Error received from the server: java.lang.IllegalArgumentException: Message descriptor not found : Source.SmallA 15:49:56,460 ERROR [org.teiid.CONNECTOR] (Worker0_QueryProcessorQueue66) Connector worker process failed for atomic-request=yxRm19e5AqTO.1.0.8: org.infinispan.client.hotrod.exceptions.HotRodClientException:Request for messageId=30 returned server error (status=0x85): java.lang.IllegalArgumentException: Message descriptor not found : Source.SmallA at org.infinispan.client.hotrod.impl.protocol.Codec20.checkForErrorsInResponseStatus(Codec20.java:363) [infinispan-client-hotrod-8.4.0.Final-redhat-2.jar:8.4.0.Final-redhat-2] at org.infinispan.client.hotrod.impl.protocol.Codec20.readPartialHeader(Codec20.java:152) [infinispan-client-hotrod-8.4.0.Final-redhat-2.jar:8.4.0.Final-redhat-2] at org.infinispan.client.hotrod.impl.protocol.Codec20.readHeader(Codec20.java:138) [infinispan-client-hotrod-8.4.0.Final-redhat-2.jar:8.4.0.Final-redhat-2] at org.infinispan.client.hotrod.impl.operations.HotRodOperation.readHeaderAndValidate(HotRodOperation.java:60) [infinispan-client-hotrod-8.4.0.Final-redhat-2.jar:8.4.0.Final-redhat-2] at org.infinispan.client.hotrod.impl.operations.QueryOperation.executeOperation(QueryOperation.java:68) [infinispan-client-hotrod-8.4.0.Final-redhat-2.jar:8.4.0.Final-redhat-2] at org.infinispan.client.hotrod.impl.operations.QueryOperation.executeOperation(QueryOperation.java:30) [infinispan-client-hotrod-8.4.0.Final-redhat-2.jar:8.4.0.Final-redhat-2] at org.infinispan.client.hotrod.impl.operations.RetryOnFailureOperation.execute(RetryOnFailureOperation.java:56) [infinispan-client-hotrod-8.4.0.Final-redhat-2.jar:8.4.0.Final-redhat-2] at org.infinispan.client.hotrod.impl.query.RemoteQuery.executeQuery(RemoteQuery.java:68) [infinispan-client-hotrod-8.4.0.Final-redhat-2.jar:8.4.0.Final-redhat-2] at org.infinispan.client.hotrod.impl.query.RemoteQuery.list(RemoteQuery.java:53) [infinispan-client-hotrod-8.4.0.Final-redhat-2.jar:8.4.0.Final-redhat-2] at org.teiid.translator.infinispan.hotrod.InfinispanResponse.fetchNextBatch(InfinispanResponse.java:74) [translator-infinispan-hotrod-8.12.11.6_4-redhat-6.jar:8.12.11.6_4-redhat-6] at org.teiid.translator.infinispan.hotrod.InfinispanResponse.getNextRow(InfinispanResponse.java:90) [translator-infinispan-hotrod-8.12.11.6_4-redhat-6.jar:8.12.11.6_4-redhat-6] at org.teiid.translator.infinispan.hotrod.InfinispanQueryExecution.next(InfinispanQueryExecution.java:136) [translator-infinispan-hotrod-8.12.11.6_4-redhat-6.jar:8.12.11.6_4-redhat-6] at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.handleBatch(ConnectorWorkItem.java:433) [teiid-engine-8.12.11.6_4-redhat-64-6.jar:8.12.11.6_4-redhat-64-6] at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.more(ConnectorWorkItem.java:236) [teiid-engine-8.12.11.6_4-redhat-64-6.jar:8.12.11.6_4-redhat-64-6] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [rt.jar:1.8.0_121] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) [rt.jar:1.8.0_121] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [rt.jar:1.8.0_121] at java.lang.reflect.Method.invoke(Method.java:498) [rt.jar:1.8.0_121] at org.teiid.dqp.internal.datamgr.ConnectorManager$1.invoke(ConnectorManager.java:211) [teiid-engine-8.12.11.6_4-redhat-64-6.jar:8.12.11.6_4-redhat-64-6] at com.sun.proxy.$Proxy79.more(Unknown Source) at org.teiid.dqp.internal.process.DataTierTupleSource.getResults(DataTierTupleSource.java:309) [teiid-engine-8.12.11.6_4-redhat-64-6.jar:8.12.11.6_4-redhat-64-6] at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:112) [teiid-engine-8.12.11.6_4-redhat-64-6.jar:8.12.11.6_4-redhat-64-6] at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:108) [teiid-engine-8.12.11.6_4-redhat-64-6.jar:8.12.11.6_4-redhat-64-6] at java.util.concurrent.FutureTask.run(FutureTask.java:266) [rt.jar:1.8.0_121] at org.teiid.dqp.internal.process.FutureWork.run(FutureWork.java:65) [teiid-engine-8.12.11.6_4-redhat-64-6.jar:8.12.11.6_4-redhat-64-6] at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:280) [teiid-engine-8.12.11.6_4-redhat-64-6.jar:8.12.11.6_4-redhat-64-6] at org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:119) [teiid-engine-8.12.11.6_4-redhat-64-6.jar:8.12.11.6_4-redhat-64-6] at org.teiid.dqp.internal.process.ThreadReuseExecutor$3.run(ThreadReuseExecutor.java:210) [teiid-engine-8.12.11.6_4-redhat-64-6.jar:8.12.11.6_4-redhat-64-6] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [rt.jar:1.8.0_121] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [rt.jar:1.8.0_121] at java.lang.Thread.run(Thread.java:745) [rt.jar:1.8.0_121] 15:49:56,473 WARN [org.teiid.PROCESSOR] (Worker1_QueryProcessorQueue67) TEIID30020 Processing exception for request yxRm19e5AqTO.1 'TEIID30504 jdg7-source-1: java.lang.IllegalArgumentException: Message descriptor not found : Source.SmallA'. Originally TeiidProcessingException Codec20.java:363. Enable more detailed logging to see the entire stacktrace.
Attachments
Issue Links
- duplicates
-
TEIID-5056 Infinispan Hotrod error on DDL metadata change
- Resolved