Within doArchive there is a service goroutine that performs the
archiving function. This goroutine reports its error using a `chan
error` called `done`. Prior to this PR this channel had 0 capacity
meaning that the goroutine would block until the `done` channel was
cleared - however there are a couple of ways in which this channel might
not be read.
The simplest solution is to add a single space of capacity to the
goroutine which will mean that the goroutine will always complete and
even if the `done` channel is not read it will be simply garbage
collected away.
(The PR also contains two other places when setting up the indexers
which do not leak but where the blocking of the sending goroutine is
also unnecessary and so we should just add a small amount of capacity
and let the sending goroutine complete as soon as it can.)
Signed-off-by: Andrew Thornton <[email protected]>
Co-authored-by: 6543 <[email protected]>
* Start adding mechanism to return unhandled data
Signed-off-by: Andrew Thornton <[email protected]>
* Create pushback interface
Signed-off-by: Andrew Thornton <[email protected]>
* Add Pausable interface to WorkerPool and Manager
Signed-off-by: Andrew Thornton <[email protected]>
* Implement Pausable and PushBack for the bytefifos
Signed-off-by: Andrew Thornton <[email protected]>
* Implement Pausable and Pushback for ChannelQueues and ChannelUniqueQueues
Signed-off-by: Andrew Thornton <[email protected]>
* Wire in UI for pausing
Signed-off-by: Andrew Thornton <[email protected]>
* add testcases and fix a few issues
Signed-off-by: Andrew Thornton <[email protected]>
* fix build
Signed-off-by: Andrew Thornton <[email protected]>
* prevent "race" in the test
Signed-off-by: Andrew Thornton <[email protected]>
* fix jsoniter mismerge
Signed-off-by: Andrew Thornton <[email protected]>
* fix conflicts
Signed-off-by: Andrew Thornton <[email protected]>
* fix format
Signed-off-by: Andrew Thornton <[email protected]>
* Add warnings for no worker configurations and prevent data-loss with redis/levelqueue
Signed-off-by: Andrew Thornton <[email protected]>
* Use StopTimer
Signed-off-by: Andrew Thornton <[email protected]>
Co-authored-by: Lauris BH <[email protected]>
Co-authored-by: 6543 <[email protected]>
Co-authored-by: techknowlogick <[email protected]>
Co-authored-by: wxiaoguang <[email protected]>
This PR continues the work in #17125 by progressively ensuring that git
commands run within the request context.
This now means that the if there is a git repo already open in the context it will be used instead of reopening it.
Signed-off-by: Andrew Thornton <[email protected]>
* Move keys to models/keys
* Rename models/keys -> models/asymkey
* change the missed package name
* Fix package alias
* Fix test
* Fix docs
* Fix test
* Fix test
* merge