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

MergeView processing fails for Multiplexer channel

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Major Major
    • 2.5
    • 2.4.1
    • None

      When I simulate a cluster failure and restart using a Multiplexer channel, the merge process fails in JGroups with an UnsupportedOperationException in Multiplexer.mergeServiceState(). The stack trace is as follows.

      ERROR [org.jgroups.mux.Multiplexer] problems handling merge view java.lang.UnsupportedOperationException
      at org.jgroups.util.UnmodifiableVector.retainAll(UnmodifiableVector.java:158)
      at org.jgroups.mux.Multiplexer.mergeServiceState(Multiplexer.java:867)
      at org.jgroups.mux.Multiplexer.handleMergeView(Multiplexer.java:812)
      at org.jgroups.mux.Multiplexer.access$200(Multiplexer.java:21)
      at org.jgroups.mux.Multiplexer$1.run(Multiplexer.java:287)

      I looked at the relevant JGroups code and it appears that JGroups uses a MergeView object that always returns an UnmodifiableVector when MergeView.getMembers() is invoked. The Multiplexer.mergeServiceState() method invokes MergeView.getMembers() followed by UnmodifiableVector.retainAll(), causing the exception to occur.

      This problem can be replicated by executing DRMTestCase in JBossAS 5.0. The error occurs in DRMTestCase.testIsMasterReplica().

              vblagoje Vladimir Blagojevic (Inactive)
              jerrygauth Jerry Gauthier (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

                Created:
                Updated:
                Resolved: