-
-
Notifications
You must be signed in to change notification settings - Fork 5.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Pause queues #15928
Pause queues #15928
Conversation
Signed-off-by: Andrew Thornton <art27@cantab.net>
FAO @lafriks |
Signed-off-by: Andrew Thornton <art27@cantab.net>
Signed-off-by: Andrew Thornton <art27@cantab.net>
Signed-off-by: Andrew Thornton <art27@cantab.net>
…eues Signed-off-by: Andrew Thornton <art27@cantab.net>
Signed-off-by: Andrew Thornton <art27@cantab.net>
Signed-off-by: Andrew Thornton <art27@cantab.net>
From code point of view looks good to me, will test it on weekend together with my WIP PR |
This comment has been minimized.
This comment has been minimized.
Build seems to be failing now |
yeah I must have made a broken merge when I fixed the last conflict. |
fixed |
Signed-off-by: Andrew Thornton <art27@cantab.net>
Signed-off-by: Andrew Thornton <art27@cantab.net>
Signed-off-by: Andrew Thornton <art27@cantab.net>
Signed-off-by: Andrew Thornton <art27@cantab.net>
As an additional thing we can now add warnings for no workers and finally safely handle the case of no worker configurations for redis. |
…redis/levelqueue Signed-off-by: Andrew Thornton <art27@cantab.net>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, while maybe util.StopTimer(timer)
can be used to reduce some code.
Signed-off-by: Andrew Thornton <art27@cantab.net>
🚀 |
Make lgtm work |
* 'main' of https://github.com/go-gitea/gitea: Add packagist webhook (go-gitea#18224) Fix mime-type detection for HTTP server (go-gitea#18370) Always use git command but not os.Command (go-gitea#18363) Add deprecated for LFS_CONTENT_PATH on zh-cn docs (go-gitea#18362) [skip ci] Updated translations via Crowdin Make gitea, gitea-vet future-proof (go-gitea#18361) Pause queues (go-gitea#15928) Disable content sniffing on `PlainTextBytes` (go-gitea#18359) Update github.com/duo-labs/webauthn (go-gitea#18357)
Implements the Pausable interface on WrappedQueues and PersistableChannelUniqueQueues Reference #15928 Signed-off-by: Andrew Thornton art27@cantab.net
* Start adding mechanism to return unhandled data Signed-off-by: Andrew Thornton <art27@cantab.net> * Create pushback interface Signed-off-by: Andrew Thornton <art27@cantab.net> * Add Pausable interface to WorkerPool and Manager Signed-off-by: Andrew Thornton <art27@cantab.net> * Implement Pausable and PushBack for the bytefifos Signed-off-by: Andrew Thornton <art27@cantab.net> * Implement Pausable and Pushback for ChannelQueues and ChannelUniqueQueues Signed-off-by: Andrew Thornton <art27@cantab.net> * Wire in UI for pausing Signed-off-by: Andrew Thornton <art27@cantab.net> * add testcases and fix a few issues Signed-off-by: Andrew Thornton <art27@cantab.net> * fix build Signed-off-by: Andrew Thornton <art27@cantab.net> * prevent "race" in the test Signed-off-by: Andrew Thornton <art27@cantab.net> * fix jsoniter mismerge Signed-off-by: Andrew Thornton <art27@cantab.net> * fix conflicts Signed-off-by: Andrew Thornton <art27@cantab.net> * fix format Signed-off-by: Andrew Thornton <art27@cantab.net> * Add warnings for no worker configurations and prevent data-loss with redis/levelqueue Signed-off-by: Andrew Thornton <art27@cantab.net> * Use StopTimer Signed-off-by: Andrew Thornton <art27@cantab.net> Co-authored-by: Lauris BH <lauris@nix.lv> Co-authored-by: 6543 <6543@obermui.de> Co-authored-by: techknowlogick <techknowlogick@gitea.io> Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
…tea#18393) Implements the Pausable interface on WrappedQueues and PersistableChannelUniqueQueues Reference go-gitea#15928 Signed-off-by: Andrew Thornton art27@cantab.net
Add functionality to pause and resume queues with the ability to hand back unhandled data.
This also now alerts if a queue configuration will result in no workers and no worker scalling (as in #18189) - and will allow no-worker configurations on redis to not result in loss from the queue.