[
https://issues.apache.org/jira/browse/ZOOKEEPER-723?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Daniel Gómez Ferro updated ZOOKEEPER-723:
-----------------------------------------
Attachment: ZOOKEEPER-723.patch
bq. I seem to also remember another related issue, that once you start allowing
arbitrarily large ephemeral trees to be built there was a concern about cleanup
and it's effect on availability of the system as a whole. (still a concern I
would have)
How is this different from having lots of ephemeral nodes that need to be
cleaned up on session expiration?
I'm attaching a new version of the patch with Flavio's proposal. The ephemeral
container (name change pending) will be deleted after session expiration if it
doesn't have any child, or when its last child gets deleted. I've added another
test for checking this behavior and some user documentation. If it is not
enough let me know.
> 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 is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira