[
https://jira.jboss.org/browse/ISPN-702?page=com.atlassian.jira.plugin.sys...
]
Galder Zamarreño resolved ISPN-702.
-----------------------------------
Resolution: Done
Fixed by making sure listener gets hooked before any caches are started.
You can get the fix by checking out latest 4.2.x branch and building it.
RankCalculatorListener registered to late
-----------------------------------------
Key: ISPN-702
URL:
https://jira.jboss.org/browse/ISPN-702
Project: Infinispan
Issue Type: Bug
Components: Cache Server
Affects Versions: 4.2.0.ALPHA3
Reporter: Jacek Gerbszt
Assignee: Galder Zamarreño
Priority: Critical
Fix For: 4.2.0.BETA1
Any call to HotRod Server v. 4.2.0.ALPHA3 ends with the exception:
2010-10-14 17:39:36,953 ERROR [org.infinispan.server.core.AbstractProtocolDecoder$]
(HotRodServerWorker-1-22) Exception reported
org.infinispan.server.core.ServerException: java.lang.IllegalStateException: If
clustered, Version prefix cannot be 0. Rank calculator probably not in use.
at
org.infinispan.server.core.AbstractProtocolDecoder.decode(AbstractProtocolDecoder.scala:53)
at
org.infinispan.server.core.transport.netty.DecoderAdapter.decode(DecoderAdapter.scala:18)
at
org.infinispan.server.core.transport.netty.DecoderAdapter.decode(DecoderAdapter.scala:14)
at
org.jboss.netty.handler.codec.replay.ReplayingDecoder.callDecode(ReplayingDecoder.java:471)
at
org.jboss.netty.handler.codec.replay.ReplayingDecoder.messageReceived(ReplayingDecoder.java:444)
at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:274)
at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:261)
at org.jboss.netty.channel.socket.nio.NioWorker.read(NioWorker.java:350)
at
org.jboss.netty.channel.socket.nio.NioWorker.processSelectedKeys(NioWorker.java:281)
at org.jboss.netty.channel.socket.nio.NioWorker.run(NioWorker.java:201)
at org.jboss.netty.util.internal.IoWorkerRunnable.run(IoWorkerRunnable.java:46)
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
The reason is that RankCalculatorListener is registered to late - in
org.infinispan.server.core.start() method, which is called at the end of overriding
org.infinispan.server.hotrod.HotRodServer.start(), which in turn starts all the defined
caches.
Maybe there is a need for adding a new lifecycle method to ProtocolServer - create().
Like in JMX services.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://jira.jboss.org/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira