2 Replies Latest reply on Jul 25, 2017 11:39 AM by rareddy

    Error while registering the remote executable script

    rareddy

      Hi,

       

      I am running 9.1.0 Final version of the Infinispan Server in WildFly, when I tried to register a remote script using a hot rod client I am getting the following error. In debugger, I see that I can successfully get the instance of cache "___script_cache", but when I try do any operations with "get" or "put" I see below. can someone please help, what I could be doing wrong?

       

      org.infinispan.client.hotrod.exceptions.HotRodClientException:Request for messageId=21 returned server error (status=0x85): java.io.IOException: Unsupported protocol version 74
      at org.infinispan.client.hotrod.impl.protocol.Codec20.checkForErrorsInResponseStatus(Codec20.java:363)
      at org.infinispan.client.hotrod.impl.protocol.Codec20.readPartialHeader(Codec20.java:152)
      at org.infinispan.client.hotrod.impl.protocol.Codec20.readHeader(Codec20.java:138)
      at org.infinispan.client.hotrod.impl.operations.HotRodOperation.readHeaderAndValidate(HotRodOperation.java:60)
      at org.infinispan.client.hotrod.impl.operations.AbstractKeyValueOperation.sendPutOperation(AbstractKeyValueOperation.java:58)
      at org.infinispan.client.hotrod.impl.operations.PutOperation.executeOperation(PutOperation.java:34)
      at org.infinispan.client.hotrod.impl.operations.RetryOnFailureOperation.execute(RetryOnFailureOperation.java:56)
      at org.infinispan.client.hotrod.impl.RemoteCacheImpl.put(RemoteCacheImpl.java:269)
      at org.infinispan.client.hotrod.impl.RemoteCacheSupport.put(RemoteCacheSupport.java:79)
      at org.teiid.resource.adapter.infinispan.hotrod.InfinispanConnectionImpl.registerScript(InfinispanConnectionImpl.java:134)
      at org.teiid.translator.infinispan.hotrod.InfinispanUpdateExecution$ExecutionBasedBulkInsert.run(InfinispanUpdateExecution.java:287)
      at org.teiid.translator.infinispan.hotrod.InfinispanUpdateExecution.performInsert(InfinispanUpdateExecution.java:236)
      at org.teiid.translator.infinispan.hotrod.InfinispanUpdateExecution.execute(InfinispanUpdateExecution.java:175)
      at org.teiid.dqp.internal.datamgr.ConnectorWorkItem$1.execute(ConnectorWorkItem.java:399)
      at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.execute(ConnectorWorkItem.java:361)
      

       

       

      Thanks

       

      Ramesh..

        • 1. Re: Error while registering the remote executable script
          rareddy

          This is the Infinispan server exception I am seeing, not sure why it is picking up RiverUnMarshaller.

           

          17:12:21,316 DEBUG [org.infinispan.server.hotrod.HotRodExceptionHandler] (HotRod-ServerWorker-4-16) Exception caught: org.infinispan.commons.CacheException: java.io.IOException: Unsupported protocol version 74
          at org.infinispan.commons.dataconversion.CompatModeEncoder.toStorage(CompatModeEncoder.java:28)
          at org.infinispan.commons.dataconversion.EncodingUtils.toStorage(EncodingUtils.java:42)
          at org.infinispan.cache.impl.EncoderCache.keyToStorage(EncoderCache.java:107)
          at org.infinispan.cache.impl.EncoderCache.put(EncoderCache.java:450)
          at org.infinispan.cache.impl.AbstractDelegatingAdvancedCache.put(AbstractDelegatingAdvancedCache.java:317)
          at org.infinispan.server.hotrod.CacheDecodeContext.put(CacheDecodeContext.java:233)
          at org.infinispan.server.hotrod.ContextHandler.realRead(ContextHandler.java:65)
          at org.infinispan.server.hotrod.ContextHandler.lambda$channelRead0$0(ContextHandler.java:52)
          at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
          at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
          at io.netty.util.concurrent.DefaultThreadFactory$DefaultRunnableDecorator.run(DefaultThreadFactory.java:144)
          at java.lang.Thread.run(Thread.java:748)
          Caused by: java.io.IOException: Unsupported protocol version 74
          at org.jboss.marshalling.river.RiverUnmarshaller.start(RiverUnmarshaller.java:1348)
          at org.infinispan.commons.marshall.jboss.AbstractJBossMarshaller.startObjectInput(AbstractJBossMarshaller.java:128)
          at org.infinispan.commons.marshall.jboss.AbstractJBossMarshaller.objectFromByteBuffer(AbstractJBossMarshaller.java:109)
          at org.infinispan.commons.marshall.AbstractMarshaller.objectFromByteBuffer(AbstractMarshaller.java:82)
          at org.infinispan.commons.dataconversion.CompatModeEncoder.unmarshall(CompatModeEncoder.java:49)
          at org.infinispan.commons.dataconversion.CompatModeEncoder.toStorage(CompatModeEncoder.java:26)
          ... 11 more
          
          • 2. Re: Error while registering the remote executable script
            rareddy

            This seems to be a limitation when the ProtstreamMarshller is in use on the cache configured over HotRod. This is also discussed here [1]. One question, I do have is this limitation also applies if one designs using the "ServerTask"?

             

            [1] Infinispan Remote scripting with Protostreammarshaller