You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@zookeeper.apache.org by "Yulian Oifa (Jira)" <ji...@apache.org> on 2022/01/31 18:01:00 UTC

[jira] [Created] (ZOOKEEPER-4463) Improve the data protocol

Yulian Oifa created ZOOKEEPER-4463:
--------------------------------------

             Summary: 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


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.1#820001)