You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@curator.apache.org by "Gregory Chanan (JIRA)" <ji...@apache.org> on 2015/05/18 23:34:00 UTC

[jira] [Created] (CURATOR-221) ACLProvider is not respected on parent nodes after calling CuratorFramework.usingNamespace

Gregory Chanan created CURATOR-221:
--------------------------------------

             Summary: ACLProvider is not respected on parent nodes after calling CuratorFramework.usingNamespace
                 Key: CURATOR-221
                 URL: https://issues.apache.org/jira/browse/CURATOR-221
             Project: Apache Curator
          Issue Type: Bug
          Components: Framework
    Affects Versions: 2.7.1
            Reporter: Gregory Chanan


See HADOOP-11973 for some background information.

Here's a high level overview of the issue I'm seeing:
1) I create a CuratorFramework with a non-default ACLProvider
2) I call framework.usingNamespace("/solr/zkdtsm") on the curator framework
3) I do some action, like starting a new SharedCount on a subnode of the namespace /testPath/ZKDTSMRoot/ZKDTSMSeqNumRoot

Result: the tree is created, but neither /solr nor /solr/zkdtsm have ACLs, while /testPath/ZKDTSMRoot/ZKDTSMSeqNumRoot does.  I would expect all those nodes would have ACLs because I only performed zookeeper actions on a CuratorFramework with an ACLProvider specified.

This seems to happen because NamespaceImpl does not save the ACLProvider, see this line:
https://github.com/apache/curator/blob/7f2098654a26e2f593801a586ce68300f54abf15/curator-framework/src/main/java/org/apache/curator/framework/imps/NamespaceImpl.java#L47

Then, when an action is performed on the namespace, fixForNamespace is called:
https://github.com/apache/curator/blob/7f2098654a26e2f593801a586ce68300f54abf15/curator-framework/src/main/java/org/apache/curator/framework/imps/NamespaceImpl.java#L74
resulting in the parents being created without an ACL.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)