From 6c125e979713259f41e99ef738a612318c69fbc5 Mon Sep 17 00:00:00 2001
From: zeripath <art27@cantab.net>
Date: Fri, 3 Sep 2021 11:20:57 +0100
Subject: [PATCH] Use immediate queues in integration tests and ensure that
 immediate (#16927)

queue type is also used for unique queues.

Signed-off-by: Andrew Thornton <art27@cantab.net>
---
 integrations/mssql.ini.tmpl  | 3 +++
 integrations/mysql.ini.tmpl  | 3 +++
 integrations/mysql8.ini.tmpl | 3 +++
 integrations/pgsql.ini.tmpl  | 3 +++
 integrations/sqlite.ini.tmpl | 3 +++
 modules/queue/setting.go     | 2 +-
 6 files changed, 16 insertions(+), 1 deletion(-)

diff --git a/integrations/mssql.ini.tmpl b/integrations/mssql.ini.tmpl
index 0a7710fc5f..b9ed26dccd 100644
--- a/integrations/mssql.ini.tmpl
+++ b/integrations/mssql.ini.tmpl
@@ -15,6 +15,9 @@ ISSUE_INDEXER_QUEUE_DIR = integrations/gitea-integration-mssql/indexers/issues.q
 REPO_INDEXER_ENABLED = true
 REPO_INDEXER_PATH = integrations/gitea-integration-mssql/indexers/repos.bleve
 
+[queue]
+TYPE = immediate
+
 [queue.code_indexer]
 TYPE = immediate
 
diff --git a/integrations/mysql.ini.tmpl b/integrations/mysql.ini.tmpl
index a78b0425a1..6de2374277 100644
--- a/integrations/mysql.ini.tmpl
+++ b/integrations/mysql.ini.tmpl
@@ -16,6 +16,9 @@ ISSUE_INDEXER_QUEUE_DIR = integrations/gitea-integration-mysql/indexers/issues.q
 REPO_INDEXER_ENABLED = true
 REPO_INDEXER_PATH = integrations/gitea-integration-mysql/indexers/repos.bleve
 
+[queue]
+TYPE = immediate
+
 [queue.code_indexer]
 TYPE = immediate
 
diff --git a/integrations/mysql8.ini.tmpl b/integrations/mysql8.ini.tmpl
index 1151b6abc2..81a1d8836c 100644
--- a/integrations/mysql8.ini.tmpl
+++ b/integrations/mysql8.ini.tmpl
@@ -15,6 +15,9 @@ ISSUE_INDEXER_QUEUE_DIR = integrations/gitea-integration-mysql8/indexers/issues.
 REPO_INDEXER_ENABLED = true
 REPO_INDEXER_PATH = integrations/gitea-integration-mysql8/indexers/repos.bleve
 
+[queue]
+TYPE = immediate
+
 [queue.code_indexer]
 TYPE = immediate
 
diff --git a/integrations/pgsql.ini.tmpl b/integrations/pgsql.ini.tmpl
index f11d4faba5..db1914a1bb 100644
--- a/integrations/pgsql.ini.tmpl
+++ b/integrations/pgsql.ini.tmpl
@@ -16,6 +16,9 @@ ISSUE_INDEXER_QUEUE_DIR = integrations/gitea-integration-pgsql/indexers/issues.q
 REPO_INDEXER_ENABLED = true
 REPO_INDEXER_PATH = integrations/gitea-integration-pgsql/indexers/repos.bleve
 
+[queue]
+TYPE = immediate
+
 [queue.code_indexer]
 TYPE = immediate
 
diff --git a/integrations/sqlite.ini.tmpl b/integrations/sqlite.ini.tmpl
index 71ac39a44b..76d9420d81 100644
--- a/integrations/sqlite.ini.tmpl
+++ b/integrations/sqlite.ini.tmpl
@@ -11,6 +11,9 @@ ISSUE_INDEXER_QUEUE_DIR = integrations/gitea-integration-sqlite/indexers/issues.
 REPO_INDEXER_ENABLED = true
 REPO_INDEXER_PATH    = integrations/gitea-integration-sqlite/indexers/repos.bleve
 
+[queue]
+TYPE = immediate
+
 [queue.code_indexer]
 TYPE = immediate
 
diff --git a/modules/queue/setting.go b/modules/queue/setting.go
index 0e6ff3a0a8..caaf123d42 100644
--- a/modules/queue/setting.go
+++ b/modules/queue/setting.go
@@ -75,7 +75,7 @@ func CreateUniqueQueue(name string, handle HandlerFunc, exemplar interface{}) Un
 		return nil
 	}
 
-	if len(q.Type) > 0 && q.Type != "dummy" && !strings.HasPrefix(q.Type, "unique-") {
+	if len(q.Type) > 0 && q.Type != "dummy" && q.Type != "immediate" && !strings.HasPrefix(q.Type, "unique-") {
 		q.Type = "unique-" + q.Type
 	}