You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@curator.apache.org by "Jordan Zimmerman (Jira)" <ji...@apache.org> on 2019/10/10 15:17:00 UTC
[jira] [Commented] (CURATOR-546) currentData in ModeledCacheImpl
removes ZPath from cache entries
[ https://issues.apache.org/jira/browse/CURATOR-546?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16948687#comment-16948687 ]
Jordan Zimmerman commented on CURATOR-546:
------------------------------------------
Yuck - this looks like a pretty bad copy/paste bug. There might be some kind of ugly workaround until we have a fix. Let me think about it.
> currentData in ModeledCacheImpl removes ZPath from cache entries
> -----------------------------------------------------------------
>
> Key: CURATOR-546
> URL: https://issues.apache.org/jira/browse/CURATOR-546
> Project: Apache Curator
> Issue Type: Bug
> Components: Client, Framework
> Affects Versions: 4.2.0
> Reporter: Yang
> Priority: Blocker
> Attachments: kafka-consumer-proxy-cpu-profile.svg
>
>
> I'm using AsyncCuratorFramework with cache, during testing I noticed that
> *client.cache().currentChildren(<zkPath>)* not also return the full list of children, by digging into *ModeledCacheImpl*, apparently some children been deleted when I call *client.cache().currentData(<zkPath>)*.
> What's the alternative for me if I wants to get cached node while don't remove it from the cache?
>
> public Optional<ZNode<T>> currentData(ZPath path)
> {
> Entry<T> entry = entries.remove(path);
> if ( entry != null )
> { return Optional.of(new ZNodeImpl<>(path, entry.stat, entry.model)); }
> return Optional.empty();
> }
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)