From f1ffa339f0f1ec6b3804f7da868d9502a798fc8e Mon Sep 17 00:00:00 2001 From: Bela Ban Date: Tue, 11 Sep 2012 12:07:41 +0200 Subject: [PATCH] If we're the coord, handle GMS.leave_timeout differently (https://issues.jboss.org/browse/JGRP-1509) --- src/org/jgroups/protocols/pbcast/CoordGmsImpl.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/org/jgroups/protocols/pbcast/CoordGmsImpl.java b/src/org/jgroups/protocols/pbcast/CoordGmsImpl.java index c7e14a608e3..06b3c91f98e 100644 --- a/src/org/jgroups/protocols/pbcast/CoordGmsImpl.java +++ b/src/org/jgroups/protocols/pbcast/CoordGmsImpl.java @@ -55,7 +55,10 @@ public void leave(Address mbr) { leaving=true; gms.getViewHandler().add(new Request(Request.LEAVE, mbr, false)); gms.getViewHandler().stop(true); // wait until all requests have been processed, then close the queue and leave - gms.getViewHandler().waitUntilCompleted(gms.leave_timeout); + + // If we're the coord leaving, ignore gms.leave_timeout: https://issues.jboss.org/browse/JGRP-1509 + long timeout=(long)(Math.max(gms.leave_timeout, gms.view_ack_collection_timeout) * 1.10); + gms.getViewHandler().waitUntilCompleted(timeout); }