Only poll work when there are slots to work on#393
Merged
cschleiden merged 3 commits intomainfrom Aug 7, 2025
Merged
Conversation
e03c154 to
9f4db5c
Compare
Owner
Author
|
!bench |
Benchmark ResultsMySQL run
SQLite run
Redis run
|
Owner
Author
|
!bench large |
Benchmark ResultsMySQL run
SQLite run
Redis run
|
Owner
Author
|
!bench verylarge |
Benchmark ResultsMySQL run
SQLite run
Redis run
|
Owner
Author
|
!bench !large |
Benchmark ResultsMySQL run
Large MySQL payload run (1MB)
SQLite run
Large SQLite payload run (1MB)
Redis run
Large Redis payload run (1MB)
|
j-nowakowski
reviewed
Aug 4, 2025
014128a to
1e8fc85
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This pull request refactors the worker queue implementation to introduce a new
workQueueabstraction, improving the management of task concurrency and queue operations. The main changes include replacing the direct use of channels for task queuing and concurrency control with the newworkQueuetype, updating the worker logic to use this abstraction, and adding comprehensive tests for the new queue.If the number of max parallel tasks a worker can work is constrained, it will pause polling until capacity is available.