[Improvement] Fine-grained lock for MutableShuffleHandle when reassign happens
- Dominant language
- Java
- Stars
- 454
- Forks
- 172
- Avg merge
- 5d 17h
- Merged PRs (30d)
- 5
Description
### Code of Conduct
- [x] I agree to follow this project's [Code of Conduct](https://www.apache.org/foundation/policies/conduct)
### Search before asking
- [x] I have searched in the [issues](https://github.com/apache/incubator-uniffle/issues?q=is%3Aissue) and found no similar issues.
### What would you like to be improved?
Now, the lock scope of `MutableShuffleHandleInfo` is still big although we have made this as a read-write lock by #2706 . Maybe we could make `MutableShuffleHandleInfo` thread safe and then abort the upper lock.
### How should we improve?
_No response_
### Are you willing to submit PR?
- [x] Yes I am willing to submit a PR!
Contributor guide
Research direction
Start by reading the MutableShuffleHandle and MutableShuffleHandleInfo implementations, then review the read-write lock changes in #2706. Trace the reassign path and identify the current upper lock scope. Done means MutableShuffleHandleInfo is thread safe and the unnecessary upper lock can be removed without changing reassign behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- distributed-systems
- Issue type
- Refactor
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100