[Bug] Reallocating ShuffleServer functionality during the write phase takes up a lot of Driver memory.
- 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.
### Describe the bug
When the Executor obtains the ShuffleHandleInfo object from the Driver, if the number of writers and readers is too large (the number of partitions is too large), the ShuffleServer function is reassigned during the write failure phase. GRPC thread ShuffleHandleInfo converted to RPC message, causing a large memory footprint, resulting in Driver crash.
### Affects Version(s)
0.10.0
### Uniffle Server Log Output
_No response_
### Uniffle Engine Log Output
_No response_
### Uniffle Server Configurations
_No response_
### Uniffle Engine Configurations
_No response_
### Additional context
_No response_
### Are you willing to submit PR?
- [X] Yes I am willing to submit a PR!
Contributor guide
Research direction
Start at the ShuffleHandleInfo retrieval and its conversion to a gRPC message during ShuffleServer reallocation after a write failure. Reproduce with a very large number of partitions, writers, and readers; done means the Driver no longer crashes from the resulting memory footprint.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- grpc, java
- Domain
- distributed-systems
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100