Uploaded image for project: 'JGroups'
  1. JGroups
  2. JGRP-1373

MERGE2: findAllViews assumes the list returned by the discovery protocol is modifiable

    XMLWordPrintable

Details

    • Bug
    • Resolution: Won't Do
    • Major
    • 3.0
    • 3.0
    • None

    Description

      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@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)

      Attachments

        Issue Links

          Activity

            People

              rhn-engineering-bban Bela Ban
              dberinde@redhat.com Dan Berindei (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: