You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@curator.apache.org by "Cameron McKenzie (JIRA)" <ji...@apache.org> on 2015/06/19 00:53:00 UTC

[jira] [Commented] (CURATOR-224) Locking Not Working with DistributedIdQueue

    [ https://issues.apache.org/jira/browse/CURATOR-224?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14592680#comment-14592680 ] 

Cameron McKenzie commented on CURATOR-224:
------------------------------------------

Please create a PR with a fix and unit tests if possible. If not, I will look at it, but no guarantees on when that will be.

> Locking Not Working with DistributedIdQueue
> -------------------------------------------
>
>                 Key: CURATOR-224
>                 URL: https://issues.apache.org/jira/browse/CURATOR-224
>             Project: Apache Curator
>          Issue Type: Bug
>          Components: Apache, Framework
>    Affects Versions: 2.8.0
>         Environment: Windows 7/Java 8
>            Reporter: Zhihong Zhang
>            Priority: Blocker
>             Fix For: awaiting-response
>
>
> The locking doesn't work with DistributedIdQeue.
>     2015-06-18 17:19:47.859  INFO 18244 --- [    TaskCache-0] com.pixia.gi.zookeeper.TaskLockingQueue  : Path cache event: path=/task_queue/queue-|7qb89wjddu|0000000001, type=CHILD_REMOVED
>     2015-06-18 17:19:47.864  INFO 18244 --- [    TaskCache-0] com.pixia.gi.zookeeper.TaskLockingQueue  : Path cache event: path=/task_queue/queue-0000000005, type=CHILD_ADDED
> When the DistributedQueue does the requeue, it recreates a new node path without the ID. The bug is in following code block,
>             if ( requeue )
>             {
>                 client.inTransaction()
>                     .delete().forPath(itemPath)
>                     .and()
>                     .create().withMode(CreateMode.PERSISTENT_SEQUENTIAL).forPath(makeItemPath(), bytes)
>                     .and()
>                     .commit();
>             }
> Should replace makeItemPath() with itemPath.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)