[
https://issues.apache.org/jira/browse/CURATOR-690?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Zili Chen reassigned CURATOR-690:
---------------------------------
Assignee: Zili Chen
> CuratorCache fails to load the cache if there are more than 64K child ZNodes
> ----------------------------------------------------------------------------
>
> Key: CURATOR-690
> URL: https://issues.apache.org/jira/browse/CURATOR-690
> Project: Apache Curator
> Issue Type: Improvement
> Components: Recipes
> Affects Versions: 5.5.0
> Reporter: Ryan Ruel
> Assignee: Zili Chen
> Priority: Major
> Fix For: 5.6.0
>
>
> If there are more than 64K nodes in a tree which CuratorCache is watching,
> the following exception is thrown:
> {code:java}
> java.lang.IllegalStateException: Attempt to register more than 65535 parties
> for
> org.apache.curator.framework.recipes.cache.CuratorCacheImpl$1@52354867[phase
> = 0 parties = 65535 arrived = 0]{code}
> As shown in the exception, this is due to the fact that
> java.util.concurrent.Phaser hard-limits the maximum number of Phaser
> registrants to 0xfff (64K).
> A note in the Phaser documentation indicates why this limit exist and
> proposes a solution using Tiered Phasers:
> "Implementation notes: This implementation restricts the maximum number of
> parties to 65535. Attempts to register additional parties result in
> IllegalStateException. However, you can and should create tiered phasers to
> accommodate arbitrarily large sets of participants."
--
This message was sent by Atlassian Jira
(v8.20.10#820010)