Uploaded image for project: 'Infinispan'
  1. Infinispan
  2. ISPN-997

getting java.io.IOException: Unsupported protocol version 48

    Details

    • Steps to Reproduce:
      Hide

      1.Create a 2 node cluster setup using JDBC cache loader.
      2.Using Embedded Cache manager,Insert 100 records in NodeA and wait for 1 min.
      3.Using Embedded Cache manager,Insert 100 records in NodeB and wait for 1 min.
      4.Try reading the records inserted in NodeB from NodeA. There wont be any issue.
      5.Try reading the records inserted in NodeA from NodeB. You will get IOException(Unsupported protocol version)

      Show
      1.Create a 2 node cluster setup using JDBC cache loader. 2.Using Embedded Cache manager,Insert 100 records in NodeA and wait for 1 min. 3.Using Embedded Cache manager,Insert 100 records in NodeB and wait for 1 min. 4.Try reading the records inserted in NodeB from NodeA. There wont be any issue. 5.Try reading the records inserted in NodeA from NodeB. You will get IOException(Unsupported protocol version)
    • Affects:
      Compatibility/Configuration
    • Workaround:
      Workaround Exists
    • Workaround Description:
      Hide

      JdbcStringBasedCacheStore actually stores only the key as a string, the value is stored as a sequence of bytes. This doesn't work well with VARCHAR columns, as you get back a hex representation of the byte sequence instead of the original data.

      The workaround is to use VARBINARY or BLOB as the value column.

      Show
      JdbcStringBasedCacheStore actually stores only the key as a string, the value is stored as a sequence of bytes. This doesn't work well with VARCHAR columns, as you get back a hex representation of the byte sequence instead of the original data. The workaround is to use VARBINARY or BLOB as the value column.
    • Estimated Difficulty:
      Medium

      Description

      Hi,

      I Have a 2 infinispan node cluster setup. I am facing problem when i try to access the cache entries inserted in Node1 from Node2. I am using JDBC shared cacheloader. Exception looks like below..

      Reading the keys inserted in Node1
      Mar 16, 2011 1:57:44 AM org.infinispan.loaders.jdbc.JdbcUtil unmarshall
      SEVERE: I/O error while unmarshalling from stream
      java.io.IOException: Unsupported protocol version 48
      at org.jboss.marshalling.river.RiverUnmarshaller.doStart(RiverUnmarshaller.java:1167)
      at org.jboss.marshalling.AbstractUnmarshaller.start(AbstractUnmarshaller.java:389)
      at org.infinispan.marshall.jboss.GenericJBossMarshaller.startObjectInput(GenericJBossMarshaller.java:169)
      at org.infinispan.marshall.VersionAwareMarshaller.startObjectInput(VersionAwareMarshaller.java:155)
      at org.infinispan.marshall.VersionAwareMarshaller.objectFromByteBuffer(VersionAwareMarshaller.java:112)
      at org.infinispan.marshall.AbstractStreamingMarshaller.objectFromInputStream(AbstractStreamingMarshaller.java:23)
      at org.infinispan.loaders.jdbc.JdbcUtil.unmarshall(JdbcUtil.java:88)
      at org.infinispan.loaders.jdbc.stringbased.JdbcStringBasedCacheStore.readStoredEntry(JdbcStringBasedCacheStore.java:371)
      at org.infinispan.loaders.jdbc.stringbased.JdbcStringBasedCacheStore.loadLockSafe(JdbcStringBasedCacheStore.java:296)
      at org.infinispan.loaders.LockSupportCacheStore.load(LockSupportCacheStore.java:100)
      at org.infinispan.interceptors.CacheLoaderInterceptor.loadIfNeeded(CacheLoaderInterceptor.java:149)
      at org.infinispan.interceptors.CacheLoaderInterceptor.loadIfNeededAndUpdateStats(CacheLoaderInterceptor.java:218)
      at org.infinispan.interceptors.CacheLoaderInterceptor.visitGetKeyValueCommand(CacheLoaderInterceptor.java:89)
      at org.infinispan.commands.read.GetKeyValueCommand.acceptVisitor(GetKeyValueCommand.java:59)
      at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:118)
      at org.infinispan.interceptors.base.CommandInterceptor.handleDefault(CommandInterceptor.java:132)
      at org.infinispan.commands.AbstractVisitor.visitGetKeyValueCommand(AbstractVisitor.java:88)
      at org.infinispan.commands.read.GetKeyValueCommand.acceptVisitor(GetKeyValueCommand.java:59)
      at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:118)
      at org.infinispan.interceptors.TxInterceptor.enlistReadAndInvokeNext(TxInterceptor.java:169)
      at org.infinispan.interceptors.TxInterceptor.visitGetKeyValueCommand(TxInterceptor.java:160)
      at org.infinispan.commands.read.GetKeyValueCommand.acceptVisitor(GetKeyValueCommand.java:59)
      at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:118)
      at org.infinispan.interceptors.InvocationContextInterceptor.handleAll(InvocationContextInterceptor.java:87)
      at org.infinispan.interceptors.InvocationContextInterceptor.handleDefault(InvocationContextInterceptor.java:58)
      at org.infinispan.commands.AbstractVisitor.visitGetKeyValueCommand(AbstractVisitor.java:88)
      at org.infinispan.commands.read.GetKeyValueCommand.acceptVisitor(GetKeyValueCommand.java:59)
      at org.infinispan.interceptors.InterceptorChain.invoke(InterceptorChain.java:273)
      at org.infinispan.CacheDelegate.get(CacheDelegate.java:207)
      at com.hp.uup.cache.examples.EmbeddedCacheClusterNode2.main(EmbeddedCacheClusterNode2.java:58)
      Mar 16, 2011 1:57:44 AM org.infinispan.interceptors.InvocationContextInterceptor handleAll
      SEVERE: Execution error:
      org.infinispan.loaders.CacheLoaderException: I/O error while unmarshalling from stream
      at org.infinispan.loaders.jdbc.JdbcUtil.unmarshall(JdbcUtil.java:92)
      at org.infinispan.loaders.jdbc.stringbased.JdbcStringBasedCacheStore.readStoredEntry(JdbcStringBasedCacheStore.java:371)
      at org.infinispan.loaders.jdbc.stringbased.JdbcStringBasedCacheStore.loadLockSafe(JdbcStringBasedCacheStore.java:296)
      at org.infinispan.loaders.LockSupportCacheStore.load(LockSupportCacheStore.java:100)
      at org.infinispan.interceptors.CacheLoaderInterceptor.loadIfNeeded(CacheLoaderInterceptor.java:149)
      at org.infinispan.interceptors.CacheLoaderInterceptor.loadIfNeededAndUpdateStats(CacheLoaderInterceptor.java:218)
      at org.infinispan.interceptors.CacheLoaderInterceptor.visitGetKeyValueCommand(CacheLoaderInterceptor.java:89)
      at org.infinispan.commands.read.GetKeyValueCommand.acceptVisitor(GetKeyValueCommand.java:59)
      at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:118)
      at org.infinispan.interceptors.base.CommandInterceptor.handleDefault(CommandInterceptor.java:132)
      at org.infinispan.commands.AbstractVisitor.visitGetKeyValueCommand(AbstractVisitor.java:88)
      at org.infinispan.commands.read.GetKeyValueCommand.acceptVisitor(GetKeyValueCommand.java:59)
      at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:118)
      at org.infinispan.interceptors.TxInterceptor.enlistReadAndInvokeNext(TxInterceptor.java:169)
      at org.infinispan.interceptors.TxInterceptor.visitGetKeyValueCommand(TxInterceptor.java:160)
      at org.infinispan.commands.read.GetKeyValueCommand.acceptVisitor(GetKeyValueCommand.java:59)
      at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:118)
      at org.infinispan.interceptors.InvocationContextInterceptor.handleAll(InvocationContextInterceptor.java:87)
      at org.infinispan.interceptors.InvocationContextInterceptor.handleDefault(InvocationContextInterceptor.java:58)
      at org.infinispan.commands.AbstractVisitor.visitGetKeyValueCommand(AbstractVisitor.java:88)
      at org.infinispan.commands.read.GetKeyValueCommand.acceptVisitor(GetKeyValueCommand.java:59)
      at org.infinispan.interceptors.InterceptorChain.invoke(InterceptorChain.java:273)
      at org.infinispan.CacheDelegate.get(CacheDelegate.java:207)
      at com.hp.uup.cache.examples.EmbeddedCacheClusterNode2.main(EmbeddedCacheClusterNode2.java:58)
      Caused by: java.io.IOException: Unsupported protocol version 48

      Note: I am able to see the data inserted by both the nodes in DB.

        Gliffy Diagrams

          Attachments

            Activity

              People

              • Assignee:
                dan.berindei Dan Berindei
                Reporter:
                patilka Kavita Patil
              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: