[jboss-jira] [JBoss JIRA] (JGRP-1373) MERGE2: findAllViews assumes the list returned by the discovery protocol is modifiable

Bela Ban (Commented) (JIRA) jira-events at lists.jboss.org
Mon Oct 17 05:59:45 EDT 2011


    [ https://issues.jboss.org/browse/JGRP-1373?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12635116#comment-12635116 ] 

Bela Ban commented on JGRP-1373:
--------------------------------

I considered creating a copy of the returned PingData, but this is unnecessary in 99% of the cases, and wasteful too. I guess it's simpler to just create a copy in TEST_PING. 
                
> MERGE2: findAllViews assumes the list returned by the discovery protocol is modifiable
> --------------------------------------------------------------------------------------
>
>                 Key: JGRP-1373
>                 URL: https://issues.jboss.org/browse/JGRP-1373
>             Project: JGroups
>          Issue Type: Bug
>    Affects Versions: 3.0
>            Reporter: Dan Berindei
>            Assignee: Bela Ban
>             Fix For: 3.0
>
>
> In the Infinispan test suite we use a custom TEST_PING protocol to speed up discovery and it sometimes returns Collections.emptyList(). This triggers an UnsupportedOperationException in MERGE2:
> 2011-10-09 10:34:30,381 ERROR (Timer-5,Infinispan-Cluster,RehashAfterPartitionMergeTest-NodeA-56050) [org.jgroups.util.T
> imeScheduler2] failed executing task org.jgroups.protocols.MERGE2$1 at 4dbce33
> java.lang.UnsupportedOperationException
>         at java.util.AbstractList.add(AbstractList.java:148)
>         at java.util.AbstractList.add(AbstractList.java:108)
>         at org.jgroups.protocols.MERGE2$FindSubgroupsTask.findAllViews(MERGE2.java:325)
>         at org.jgroups.protocols.MERGE2$FindSubgroupsTask._findAndNotify(MERGE2.java:255)
>         at org.jgroups.protocols.MERGE2$FindSubgroupsTask.findAndNotify(MERGE2.java:246)
>         at org.jgroups.protocols.MERGE2$1.run(MERGE2.java:202)
>         at org.jgroups.util.TimeScheduler2$MyTask.run(TimeScheduler2.java:523)
>         at org.jgroups.util.TimeScheduler2$Entry.execute(TimeScheduler2.java:428)
>         at org.jgroups.util.TimeScheduler2$1.run(TimeScheduler2.java:294)
>         at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
>         at java.lang.Thread.run(Thread.java:679)

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


More information about the jboss-jira mailing list