[CURATOR-605] DistributedQueue#processWithLockSafety can give a message to two consumers if first consumer session dies

Open
#1,122 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
20/100
Issue type
Bug
Clarity
Needs clarification
Activity status
Stale
Tech stack
java

Research direction

Start at DistributedQueue#processWithLockSafety and compare the failure scenario with CURATOR-537 and CURATOR-542. Determine how a consumer can verify that the lock still holds during consumption; done means a message cannot be delivered to two consumers when the first consumer session dies.

Written by the indexing model from the issue text.

Description

bug imported-jira-issue

The is similar to one described here:

https://issues.apache.org/jira/browse/CURATOR-537

https://issues.apache.org/jira/browse/CURATOR-542

There is no way for consumer to check if the lock still holds. It could be solved by sharing a transactional CheckOp for lockNodePath with a consumer, so he could consume the message transactionally.


Originally reported by faucct, imported from: DistributedQueue#processWithLockSafety can give a message to two consumers if first consumer session dies
  • assignee: randgalt
  • status: Open
  • priority: Major
  • resolution: Unresolved
  • imported: 2025-01-21
Dominant language
Java
Stars
3.2k
Forks
1.2k
PR merge metrics
No merged PRs in 30d

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from apache/curator

All issues in apache/curator

Similar issues

More Java issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.