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

Bela Ban (JIRA) issues at jboss.org
Wed Jul 26 09:21:00 EDT 2017


     [ https://issues.jboss.org/browse/JGRP-2199?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Bela Ban resolved JGRP-2199.
----------------------------
    Resolution: Done


Fixed according to your suggestion. Thanks, Douglas

> 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
>             Fix For: 4.0.5
>
>         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