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

"Frozen" coordinator causes the whole cluster to hang

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • Major
    • 4.0.12, 3.6.16
    • 3.6.7
    • None

    Description

      This is the result of an investigation I carried out for a problem we have experienced within our
      application, the scenario it has been re-created by pausing the JVM using a debugger.

      The discovery mechanism is JDBC_PING.

      If the coordinator's JVM gets fronzen (for whatever reason) before the coordinator sets itself as the cluster coordinator and another node is started after that it will be unable to join the cluster and it will hang indefinitely.

      This seems to be caused by the "continue" statement at

      https://github.com/belaban/JGroups/blob/master/src/org/jgroups/protocols/pbcast/ClientGmsImpl.java:92

      I have prepared a simple application which can help in replicating the problem.

      To replicate the problem :

      1) Make sure the JGROUPSPING is empty
      2) Run the application using an IDE and attaching a debugger to cause the JVM to
      be paused at line Main.java:67, wait for it.
      3) Run the application in non debug mode or with gradle using "gradle run" and it will
      hang indefinitely

      Depending on the UUID/IP Address being used generated/assigned this may not happen all the time but it happened quite often in my local tests.

      Attachments

        1. jdbc_test.xml
          0.6 kB
        2. jgroup.zip
          33 kB

        Activity

          People

            rhn-engineering-bban Bela Ban
            pietro.paolini_jira Pietro Paolini (Inactive)
            Votes:
            1 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: