mirror of
https://codeberg.org/forgejo/forgejo.git
synced 2024-11-23 19:11:58 +01:00
fix datarace on issue indexer queue (#9490)
This commit is contained in:
parent
f88715e29c
commit
8b2f29c0d2
2 changed files with 6 additions and 1 deletions
|
@ -38,6 +38,8 @@ func Init() {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
initQueue(setting.Indexer.UpdateQueueLength)
|
||||||
|
|
||||||
ctx, cancel := context.WithCancel(context.Background())
|
ctx, cancel := context.WithCancel(context.Background())
|
||||||
|
|
||||||
graceful.GetManager().RunAtTerminate(ctx, func() {
|
graceful.GetManager().RunAtTerminate(ctx, func() {
|
||||||
|
|
|
@ -21,8 +21,11 @@ type repoIndexerOperation struct {
|
||||||
|
|
||||||
var repoIndexerOperationQueue chan repoIndexerOperation
|
var repoIndexerOperationQueue chan repoIndexerOperation
|
||||||
|
|
||||||
|
func initQueue(queueLength int) {
|
||||||
|
repoIndexerOperationQueue = make(chan repoIndexerOperation, queueLength)
|
||||||
|
}
|
||||||
|
|
||||||
func processRepoIndexerOperationQueue(indexer Indexer) {
|
func processRepoIndexerOperationQueue(indexer Indexer) {
|
||||||
repoIndexerOperationQueue = make(chan repoIndexerOperation, setting.Indexer.UpdateQueueLength)
|
|
||||||
for {
|
for {
|
||||||
select {
|
select {
|
||||||
case op := <-repoIndexerOperationQueue:
|
case op := <-repoIndexerOperationQueue:
|
||||||
|
|
Loading…
Reference in a new issue