You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@zookeeper.apache.org by "ASF GitHub Bot (Jira)" <ji...@apache.org> on 2022/08/09 13:21:00 UTC

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

     [ 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)