[
https://issues.apache.org/jira/browse/CURATOR-499?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16737435#comment-16737435
]
Marquis Wang commented on CURATOR-499:
--------------------------------------
That is correct.
Zookeeper does support this (at least, via zkCli)
{code}
[zk: localhost:2181(CONNECTED) 5] create -s /foo/ data
Created /foo/0000000000
[zk: localhost:2181(CONNECTED) 6] create -s /foo/ data
Created /foo/0000000001
{code}
My use case is we are using zookeeper to store data and we're using the
sequence number as a globally unique, auto-incrementing id. The schema looks
like
{code}
/Application/Users/0000000000
/Application/Users/0000000001
/Application/Users/0000000002
...
{code}
where the data for each node is the data for that user. Because of the behavior
change in curator 2.7.1, we're unable to upgrade to newer versions of curator
without migrating the data in zookeeper.
> ZKPaths strips trailing "/" incorrectly when creating sequential nodes
> ----------------------------------------------------------------------
>
> Key: CURATOR-499
> URL: https://issues.apache.org/jira/browse/CURATOR-499
> Project: Apache Curator
> Issue Type: Bug
> Reporter: Marquis Wang
> Assignee: Jordan Zimmerman
> Priority: Minor
>
> I think this was introduced in CURATOR-166, which changed ZKPaths to strip
> trailing slashes from child nodes.
> This is fine in most cases: it made it so
> {code:java}
> curatorFramework.create()
> .forPath("/path/to/node/", data);{code}
> would create a node at {{/path/to/node}}.
> However, if you want to create a sequential node:
> {code:java}
> curatorFramework.create()
> .withMode(CreateMode.PERSISTENT_SEQUENTIAL)
> .forPath("/path/to/node/", data);{code}
> In clients after CURATOR-166 (2.7.1 and higher), this will create a node
> {{/path/to/node00000001}}. Before, and if you call the zookeeper cli with the
> same options, it would create a node {{/path/to/node/00000001}}.
> This effectively makes it so you cannot use curator to create sequential
> nodes where the entire node name is the sequence number.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)