Make the return value of LockProvider's tryLock method more reasonable
- Dominant language
- Java
- Stars
- 6.2k
- Forks
- 2.5k
- Avg merge
- 2d 8h
- Merged PRs (30d)
- 111
Description
For now, zk lock provider and hive lock provider never return false when tryLock, hence it will always return an Exception, Why can't it return false? is it make sense to always return Exception? I feel maybe we need to make sure the behavior is properly first
if want to return false or return HoodieLockException or return InterruptedException, should mean something
eg: if lockprovider returns a IllegalArgumentException we don't need to retry in LockManager since it will always illegal
## JIRA info
- Link: https://issues.apache.org/jira/browse/HUDI-4413
- Type: Improvement
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by reading the LockProvider.tryLock contract and the ZooKeeper and Hive lock-provider implementations, then trace how LockManager handles their exceptions and return values. Define consistent semantics for successful acquisition, failure, interruption, and non-retryable errors; done means the providers and LockManager agree on those outcomes and the existing behavior is covered by tests.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- distributed-systems
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100