[infinispan-issues] [JBoss JIRA] (ISPN-3218) HotRodTypeConverter throwing java.lang.ClassCastException in distributed compatibility mode

Martin Gencur (JIRA) jira-events at lists.jboss.org
Wed Jun 12 08:49:54 EDT 2013


Martin Gencur created ISPN-3218:
-----------------------------------

             Summary: HotRodTypeConverter throwing java.lang.ClassCastException in distributed compatibility mode 
                 Key: ISPN-3218
                 URL: https://issues.jboss.org/browse/ISPN-3218
             Project: Infinispan
          Issue Type: Bug
          Components: Server
    Affects Versions: 5.3.0.CR1
            Reporter: Martin Gencur
            Assignee: Tristan Tarrant
            Priority: Critical
             Fix For: 5.3.0.Final


The following test fails for the server in DIST mode when in compatibility mode. It does not happen in normal DIST mode:
{code:java}
 @Test
   public void testHotRodPutRestGetTest() throws Exception {
      final String key = "1";

      // 1. Put with Hot Rod
      RemoteCache<String, byte[]> remote = getHotRodCache();
      assertEquals(null, remote.withFlags(Flag.FORCE_RETURN_VALUE).put(key, "v1".getBytes()));

//^^^^this put operation fails 

      assertArrayEquals("v1".getBytes(), remote.get(key));

      // 2. Get with REST
      HttpMethod get = new GetMethod(getRestUrl() + "/" + key);
      getRestClient().executeMethod(get);
      assertEquals(HttpServletResponse.SC_OK, get.getStatusCode());
      assertEquals("v1".getBytes(), get.getResponseBody());
   }
{code}

ISPN version: bfa10c4 - okdalvi, 2 days ago : Update BasicCache.java
ISPN server version: cb6ef3a - Tristan Tarrant, 5 days ago : ISPN-3207 Add a top-level README

Stacktrace:

{code}
14:35:51,294 ERROR [org.infinispan.interceptors.InvocationContextInterceptor] (HotRodServerWorker-163) ISPN000136: Execution error: java.lang.NullPointerException
	at org.infinispan.interceptors.compat.TypeConverterInterceptor.visitPutKeyValueCommand(TypeConverterInterceptor.java:71) [infinispan-core-5.3.0-SNAPSHOT.jar:5.3.0-SNAPSHOT]
	at org.infinispan.commands.write.PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:83) [infinispan-core-5.3.0-SNAPSHOT.jar:5.3.0-SNAPSHOT]
	at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:120) [infinispan-core-5.3.0-SNAPSHOT.jar:5.3.0-SNAPSHOT]
	at org.infinispan.interceptors.InvocationContextInterceptor.handleAll(InvocationContextInterceptor.java:128) [infinispan-core-5.3.0-SNAPSHOT.jar:5.3.0-SNAPSHOT]
	at org.infinispan.interceptors.InvocationContextInterceptor.handleDefault(InvocationContextInterceptor.java:92) [infinispan-core-5.3.0-SNAPSHOT.jar:5.3.0-SNAPSHOT]
	at org.infinispan.commands.AbstractVisitor.visitPutKeyValueCommand(AbstractVisitor.java:54) [infinispan-core-5.3.0-SNAPSHOT.jar:5.3.0-SNAPSHOT]
	at org.infinispan.commands.write.PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:83) [infinispan-core-5.3.0-SNAPSHOT.jar:5.3.0-SNAPSHOT]
	at org.infinispan.interceptors.InterceptorChain.invoke(InterceptorChain.java:343) [infinispan-core-5.3.0-SNAPSHOT.jar:5.3.0-SNAPSHOT]
	at org.infinispan.CacheImpl.executeCommandAndCommitIfNeeded(CacheImpl.java:1337) [infinispan-core-5.3.0-SNAPSHOT.jar:5.3.0-SNAPSHOT]
	at org.infinispan.CacheImpl.putInternal(CacheImpl.java:898) [infinispan-core-5.3.0-SNAPSHOT.jar:5.3.0-SNAPSHOT]
	at org.infinispan.CacheImpl.put(CacheImpl.java:890) [infinispan-core-5.3.0-SNAPSHOT.jar:5.3.0-SNAPSHOT]
	at org.infinispan.DecoratedCache.put(DecoratedCache.java:489) [infinispan-core-5.3.0-SNAPSHOT.jar:5.3.0-SNAPSHOT]
	at org.infinispan.AbstractDelegatingAdvancedCache.put(AbstractDelegatingAdvancedCache.java:208) [infinispan-core-5.3.0-SNAPSHOT.jar:5.3.0-SNAPSHOT]
	at org.infinispan.server.core.AbstractProtocolDecoder.put(AbstractProtocolDecoder.scala:203) [infinispan-server-core-5.3.0-SNAPSHOT.jar:5.3.0-SNAPSHOT]
	at org.infinispan.server.core.AbstractProtocolDecoder.decodeValue(AbstractProtocolDecoder.scala:160) [infinispan-server-core-5.3.0-SNAPSHOT.jar:5.3.0-SNAPSHOT]
	at org.infinispan.server.core.AbstractProtocolDecoder.decode(AbstractProtocolDecoder.scala:75) [infinispan-server-core-5.3.0-SNAPSHOT.jar:5.3.0-SNAPSHOT]
	at org.infinispan.server.core.AbstractProtocolDecoder.decode(AbstractProtocolDecoder.scala:49) [infinispan-server-core-5.3.0-SNAPSHOT.jar:5.3.0-SNAPSHOT]
	at org.jboss.netty.handler.codec.replay.ReplayingDecoder.callDecode(ReplayingDecoder.java:500) [netty-3.6.5.Final.jar:]
	at org.jboss.netty.handler.codec.replay.ReplayingDecoder.messageReceived(ReplayingDecoder.java:435) [netty-3.6.5.Final.jar:]
	at org.infinispan.server.core.AbstractProtocolDecoder.messageReceived(AbstractProtocolDecoder.scala:394) [infinispan-server-core-5.3.0-SNAPSHOT.jar:5.3.0-SNAPSHOT]
	at org.jboss.netty.channel.SimpleChannelUpstreamHandler.handleUpstream(SimpleChannelUpstreamHandler.java:70) [netty-3.6.5.Final.jar:]
	at org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:564) [netty-3.6.5.Final.jar:]
	at org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:559) [netty-3.6.5.Final.jar:]
	at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:268) [netty-3.6.5.Final.jar:]
	at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:255) [netty-3.6.5.Final.jar:]
	at org.jboss.netty.channel.socket.nio.NioWorker.read(NioWorker.java:88) [netty-3.6.5.Final.jar:]
	at org.jboss.netty.channel.socket.nio.AbstractNioWorker.process(AbstractNioWorker.java:107) [netty-3.6.5.Final.jar:]
	at org.jboss.netty.channel.socket.nio.AbstractNioSelector.run(AbstractNioSelector.java:312) [netty-3.6.5.Final.jar:]
	at org.jboss.netty.channel.socket.nio.AbstractNioWorker.run(AbstractNioWorker.java:88) [netty-3.6.5.Final.jar:]
	at org.jboss.netty.channel.socket.nio.NioWorker.run(NioWorker.java:178) [netty-3.6.5.Final.jar:]
	at org.jboss.netty.util.ThreadRenamingRunnable.run(ThreadRenamingRunnable.java:108) [netty-3.6.5.Final.jar:]
	at org.jboss.netty.util.internal.DeadLockProofWorker$1.run(DeadLockProofWorker.java:42) [netty-3.6.5.Final.jar:]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [rt.jar:1.7.0_17]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0_17]
	at java.lang.Thread.run(Thread.java:722) [rt.jar:1.7.0_17]
{code}

The branch with the test can be found at https://github.com/mgencur/infinispan-server/tree/ISPN-3176/compatibility_tests (run it with "mvn clean verify")

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


More information about the infinispan-issues mailing list