[ 
https://issues.apache.org/jira/browse/ZOOKEEPER-1388?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rakesh R updated ZOOKEEPER-1388:
--------------------------------

    Attachment: ZOOKEEPER-1388.patch

Attached latest patch fixing review comment. Also removed one unnecessary arg 
from "private List<OpResult> validatePath(Iterable<Op> ops)" method.

Please have a look at the patch.

> Client side 'PathValidation' is missing for the multi-transaction api.
> ----------------------------------------------------------------------
>
>                 Key: ZOOKEEPER-1388
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-1388
>             Project: ZooKeeper
>          Issue Type: Bug
>          Components: java client
>    Affects Versions: 3.4.0
>            Reporter: Rakesh R
>            Assignee: Rakesh R
>             Fix For: 3.4.6, 3.5.0
>
>         Attachments: 0001-ZOOKEEPER-1388-trunk-version.patch, 
> 0002-ZOOKEEPER-1388-trunk-version.patch, ZOOKEEPER-1388.patch, 
> ZOOKEEPER-1388.patch
>
>
> Multi ops: Op.create(path,..), Op.delete(path, ..), Op.setData(path, ..), 
> Op.check(path, ...) apis are not performing the client side path validation 
> and the call will go to the server side and is throwing exception back to the 
> client. 
> It would be good to provide ZooKeeper client side path validation for the 
> multi transaction apis. Presently its getting err codes from the server, 
> which is also not properly conveying the cause.
> For example: When specified invalid znode path in Op.create, it giving the 
> following exception. This will not be useful to know the actual cause.
> {code}
> org.apache.zookeeper.KeeperException$NoNodeException: KeeperErrorCode = NoNode
>       at org.apache.zookeeper.KeeperException.create(KeeperException.java:115)
>       at org.apache.zookeeper.ZooKeeper.multiInternal(ZooKeeper.java:1174)
>       at org.apache.zookeeper.ZooKeeper.multi(ZooKeeper.java:1115)
> {code}



--
This message was sent by Atlassian JIRA
(v6.1#6144)

Reply via email to