You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@curator.apache.org by "John Vines (JIRA)" <ji...@apache.org> on 2014/08/07 23:59:12 UTC
[jira] [Created] (CURATOR-136) Invalid LeaderLatch path never
errors
John Vines created CURATOR-136:
----------------------------------
Summary: Invalid LeaderLatch path never errors
Key: CURATOR-136
URL: https://issues.apache.org/jira/browse/CURATOR-136
Project: Apache Curator
Issue Type: Bug
Components: Recipes
Affects Versions: 2.6.0
Reporter: John Vines
I was messing with the LeaderLatch and I noticed some ill behavior for the pathing of it. Given the following code-
{code} public static void main(String args[]) throws Exception {
TestingServer ts = new TestingServer();
CuratorFramework curator = CuratorFrameworkFactory.builder().connectString(ts.getConnectString()).retryPolicy(new ExponentialBackoffRetry(1000, 5)).build();
curator.start();
curator.getZookeeperClient().blockUntilConnectedOrTimedOut();
curator.create().creatingParentsIfNeeded().forPath("/parent", "A string".getBytes());
try {
LeaderLatch ll = new LeaderLatch(curator, "parent", "myNode");
ll.start();
ll.await();
System.out.println(ll.hasLeadership());
ll.close();
} catch (Exception e) {
e.printStackTrace();
}
ts.close();
}
{code}
the system will just hang forever. Inspecting the TestingServer with zkcli shows entries showing up though.
If I switch out the path in the LeaderLatch constructor with "/parent", the same path is created AND the program runs fine.
LeaderLatch should either accept the path all around or fail outright, not this half state that makes things difficult for the user.
--
This message was sent by Atlassian JIRA
(v6.2#6252)