Ensure chunk filler goes to sleep when active operations do not have any data
Nobody has claimed this yet.
- Dominant language
- Java
- Stars
- 1.8k
- Forks
- 298
- Avg merge
- 21h 43m
- Merged PRs (30d)
- 9
Description
Currently PutManager ChunkFiller goes into WAITING when there are no active operations (when there are no running operations that have started getting any data from the channel).
This can be improved so that the chunk filler goes to sleep when data stops arriving after it starts to arrive. This can get a little tricky and involved as we need to ensure that chunk filler gets notified in all the paths. For example, if data arrives and there are no chunks available to be filled, then when chunks eventually become available, the chunk filler should be notified.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by tracing PutManager's ChunkFiller state transitions, especially the WAITING behavior when operations have no data. Review the data-arrival and chunk-availability paths mentioned in the issue, then verify that the filler sleeps after data stops and is notified whenever new data or fillable chunks become available.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- backend, distributed-systems
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100