You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@curator.apache.org by "Zhihong Zhang (JIRA)" <ji...@apache.org> on 2015/06/18 23:32:02 UTC
[jira] [Created] (CURATOR-224) Locking Not Working with
DistributedIdQueue
Zhihong Zhang created CURATOR-224:
-------------------------------------
Summary: 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)