From: <tho...@us...> - 2013-12-11 13:28:57
|
Revision: 7631 http://bigdata.svn.sourceforge.net/bigdata/?rev=7631&view=rev Author: thompsonbry Date: 2013-12-11 13:28:48 +0000 (Wed, 11 Dec 2013) Log Message: ----------- Modified forceRemoveService() to use the following order: - serviceLeave - withdrawVote - pipelineRemove - memberRemove The is the reverse of the order in which the service establishes itself. It is important to do the service leave first in case the remote service was not truely dead. @see #724. Modified Paths: -------------- branches/MGC_1_3_0/bigdata/src/java/com/bigdata/quorum/AbstractQuorum.java Modified: branches/MGC_1_3_0/bigdata/src/java/com/bigdata/quorum/AbstractQuorum.java =================================================================== --- branches/MGC_1_3_0/bigdata/src/java/com/bigdata/quorum/AbstractQuorum.java 2013-12-10 21:36:50 UTC (rev 7630) +++ branches/MGC_1_3_0/bigdata/src/java/com/bigdata/quorum/AbstractQuorum.java 2013-12-11 13:28:48 UTC (rev 7631) @@ -2358,10 +2358,18 @@ protected void doAction() throws InterruptedException { log.warn("Forcing remove of service" + ": thisService=" + serviceId + ", otherServiceId=" + psid); - doMemberRemove(psid); + /** + * Note: The JOINED[] entry MUST be removed first in case the + * service is not truely dead. + * + * @see <a + * href="https://sourceforge.net/apps/trac/bigdata/ticket/724" + * > HA wire pulling and sure kill testing </a> + */ + doServiceLeave(psid); doWithdrawVote(psid); doPipelineRemove(psid); - doServiceLeave(psid); + doMemberRemove(psid); } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |