[
https://issues.jboss.org/browse/JGRP-2359?page=com.atlassian.jira.plugin....
]
Bela Ban commented on JGRP-2359:
--------------------------------
OK, for the backport, I renamed branch `4.0.20` -> `4.0.x`. The release will be
`4.0.21`.
Route list can be empty
-----------------------
Key: JGRP-2359
URL:
https://issues.jboss.org/browse/JGRP-2359
Project: JGroups
Issue Type: Bug
Affects Versions: 4.1.1, 4.0.20
Reporter: Pedro Ruivo
Assignee: Pedro Ruivo
Priority: Major
Fix For: 4.1.2, 4.0.21
The list of routes is changed without proper synchronization. One example, I got an empty
list when in Infinispan when try to select the route to use:
{code}
Caused by: java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
at java.util.ArrayList.rangeCheck(ArrayList.java:657)
at java.util.ArrayList.get(ArrayList.java:433)
at
org.infinispan.remoting.transport.jgroups.SiteMasterPickerImpl.pickRoute(SiteMasterPickerImpl.java:26)
at org.jgroups.protocols.relay.Relayer.getRoute(Relayer.java:126)
at org.jgroups.protocols.relay.RELAY2.route(RELAY2.java:566)
at org.jgroups.protocols.relay.RELAY2.down(RELAY2.java:425)
at org.jgroups.stack.Protocol.down(Protocol.java:317)
at org.jgroups.fork.ForkProtocol.down(ForkProtocol.java:42)
at org.jgroups.fork.ForkProtocolStack.down(ForkProtocolStack.java:62)
at org.jgroups.fork.ForkChannel.send(ForkChannel.java:222)
at org.jgroups.fork.ForkChannel.send(ForkChannel.java:21)
at
org.infinispan.remoting.transport.jgroups.JGroupsTransport.send(JGroupsTransport.java:1035)
{code}
One possible solution is to do a copy of the list before changing it in the view change
method invocation (for the bridge)
--
This message was sent by Atlassian Jira
(v7.12.1#712002)