You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@zookeeper.apache.org by "Rakesh R (JIRA)" <ji...@apache.org> on 2014/04/22 16:54:19 UTC

[jira] [Commented] (ZOOKEEPER-723) ephemeral parent znodes

    [ https://issues.apache.org/jira/browse/ZOOKEEPER-723?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13976863#comment-13976863 ] 

Rakesh R commented on ZOOKEEPER-723:
------------------------------------

Hi folks,

Both ZOOKEEPER-834 and this has similarities in the way supporting children to a znode which is owned by a session. This is really a nice feature and it would be good if we can reach to an agreement on both the cases. 

After reading the comments on this JIRA I got confused a bit, but I'm also thinking similar way where [~fpj] was suggesting. How about seeing a node like:-

Solidary or Federation znode - 
* only the session owner can create children under the parent znode
* allows to create my type znode as child (no persistent or ephemeral child under me)
* exists if session is alive
* delete if it doesn't have children and session expires

Appreciate any thoughts:)

> ephemeral parent znodes
> -----------------------
>
>                 Key: ZOOKEEPER-723
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-723
>             Project: ZooKeeper
>          Issue Type: New Feature
>          Components: server
>            Reporter: Benjamin Reed
>            Assignee: Daniel Gómez Ferro
>         Attachments: ZOOKEEPER-723.patch, ZOOKEEPER-723.patch
>
>
> ephemeral znodes have the nice property of automatically cleaning up after themselves when the creator goes away, but since they can't have children it is hard to build subtrees that will cleanup after the clients that are using them are gone.
> rather than changing the semantics of ephemeral nodes, i propose ephemeral parents: znodes that disappear when they have no more children. this cleanup would happen automatically when the last child is removed. an ephemeral parent is not tied to any particular session, so even if the creator goes away, the ephemeral parent will remain as long as there are children.
> the when an ephemeral parent is created it will have an initial child, so that it doesn't get immediately removed. i think this child should be an ephemeral znode with a predefined name, "firstChild".



--
This message was sent by Atlassian JIRA
(v6.2#6252)