[ https://issues.apache.org/jira/browse/ZOOKEEPER-4463?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
ASF GitHub Bot updated ZOOKEEPER-4463: -------------------------------------- Labels: pull-request-available (was: ) > Improve the data protocol > ------------------------- > > Key: ZOOKEEPER-4463 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-4463 > Project: ZooKeeper > Issue Type: Improvement > Components: java client, jute, server > Affects Versions: 3.6.4 > Reporter: Yulian Oifa > Priority: Major > Labels: pull-request-available > Time Spent: 10m > Remaining Estimate: 0h > > There are many operations that require multiple requests being sent to > server.Not only it decreases perfomance , but also it may cause race > condition, when data is being changed between several operations. > For example : when user wants to store the data it should first either check > if item exists and based on the result set and create the record ( another > option is to try either set or create first and if it fails try to second > command ) > Even more problematic op is delete. In case the node has many children, the > application should remotely collect those nodes and then delete them. Same > for getting children data. > Therefore , in order to improve the perfomance following operations may be > very valuable > 1) createOrSet - in some case the goal is to store the value , and its prior > state is not important > 2) recursiveDelete - this operation actually exists in CLI but does not > exists for remote commands > 3) getChildrenData - return all nodes children together with their data. > -- This message was sent by Atlassian Jira (v8.20.10#820010)