From ba75bb3dc86bd7fff0bf2b5fb1a4217cb2dbc7ae Mon Sep 17 00:00:00 2001 From: Dan Ni Date: Wed, 31 May 2017 11:55:15 -0700 Subject: [PATCH] Zookeeper: Set the correct lock state when releasing because of ZK disconnect --- .../rackspacecloud/blueflood/service/ZKShardLockManager.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/blueflood-core/src/main/java/com/rackspacecloud/blueflood/service/ZKShardLockManager.java b/blueflood-core/src/main/java/com/rackspacecloud/blueflood/service/ZKShardLockManager.java index 873e89613..1a0c68e41 100644 --- a/blueflood-core/src/main/java/com/rackspacecloud/blueflood/service/ZKShardLockManager.java +++ b/blueflood-core/src/main/java/com/rackspacecloud/blueflood/service/ZKShardLockManager.java @@ -627,7 +627,7 @@ boolean canWork() { * Triggered during the connection loss. Release the lease, and clear the mutex. */ void connectionLost() { - release(false); + release(true); } synchronized void setState(LockState newState) { @@ -737,7 +737,7 @@ public Boolean call() throws Exception { return false; } finally { lockTaskCount.decrementAndGet(); - if (!disconnected) { + if (disconnected) { setState(LockState.ERROR); } else { setState(LockState.DISINTERESTED);