[jboss-jira] [JBoss JIRA] (JGRP-2199) JDBC_PING cluster doesn't handle shutdown members

Douglas Adams (JIRA) issues at jboss.org
Mon Jun 26 15:02:00 EDT 2017


Douglas Adams created JGRP-2199:
-----------------------------------

             Summary: JDBC_PING cluster doesn't handle shutdown members
                 Key: JGRP-2199
                 URL: https://issues.jboss.org/browse/JGRP-2199
             Project: JGroups
          Issue Type: Bug
    Affects Versions: 4.0
            Reporter: Douglas Adams
            Assignee: Bela Ban
         Attachments: file-ping.xml, jdbc-ping.xml, stuck_starting_up.log

FILE_PING and JDBC_PING have different behavior when a cluster's coordinator stops.

With FILE_PING the coordinator will delete the whole cluster's file on shutdown of the coordinator.

JDBC_PING does not do this and reveals a problematic flaw in how node's are handled on shutdown.

When I added my own logging to the source of these files I observed that they're both continuously writing to the database/file all of the members because {{write()}} is called very frequently.

---

Current behavior:

GIVEN a cluster of JDBC_PING registered nodes
WHEN a node shuts down 
THEN it removes itself from the database table AND the coordinator almost immediately re-adds the shut down member to the table because of the {{List<PingData>}} sent to write()

GIVEN a cluster of JDBC_PING registered nodes has only the coordinator left
WHEN the coordinator shuts down
THEN the coordinator removes itself from the database and because there's no coordinator left the database shows a list of only the 'members' with no coordinator

GIVEN a cluster of JDBC_PING registered nodes
WHEN the coordinator shuts down or crashes and does not have time to remove itself from the database
THEN the next node to start will never finish negotiating membership with the cluster because a phantom coordinator still exists (see attachement: stuck_starting_up.log)


---

I expected the behavior between JDBC_PING and FILE_PING to remain consistent




--
This message was sent by Atlassian JIRA
(v7.2.3#72005)


More information about the jboss-jira mailing list