Exercise parallel GIN builds in regression tests
authorTomas Vondra <tomas.vondra@postgresql.org>
Mon, 26 Jan 2026 17:54:12 +0000 (18:54 +0100)
committerTomas Vondra <tomas.vondra@postgresql.org>
Mon, 26 Jan 2026 19:05:17 +0000 (20:05 +0100)
Modify two places creating GIN indexes in regression tests, so that the
build is parallel. This provides a basic test coverage, even if the
amounts of data are fairly small.

Reported-by: Kirill Reshke <reshkekirill@gmail.com>
Backpatch-through: 18
Discussion: https://postgr.es/m/CALdSSPjUprTj+vYp1tRKWkcLYzdy=N=O4Cn4y_HoxNSqQwBttg@mail.gmail.com

src/test/regress/expected/jsonb.out
src/test/regress/expected/tsearch.out
src/test/regress/sql/jsonb.sql
src/test/regress/sql/tsearch.sql

index 93535fd7deeaa7279d1093ab2f5d47a626cc50eb..4e2467852db13bbb21334bd3fb2b0fbe8e108fbb 100644 (file)
@@ -3131,6 +3131,7 @@ SELECT count(*) FROM testjsonb WHERE j @? '$.bar';
      0
 (1 row)
 
+ALTER TABLE testjsonb SET (parallel_workers = 2);
 CREATE INDEX jidx ON testjsonb USING gin (j);
 SET enable_seqscan = off;
 SELECT count(*) FROM testjsonb WHERE j @> '{"wait":null}';
@@ -3507,7 +3508,7 @@ SELECT count(*) FROM testjsonb WHERE j = '{"pos":98, "line":371, "node":"CBA", "
 
 --gin path opclass
 DROP INDEX jidx;
-CREATE INDEX jidx ON testjsonb USING gin (j jsonb_path_ops);
+CREATE INDEX CONCURRENTLY jidx ON testjsonb USING gin (j jsonb_path_ops);
 SET enable_seqscan = off;
 SELECT count(*) FROM testjsonb WHERE j @> '{"wait":null}';
  count 
index 9fad6c8b04b1eb0310482ddfccfe42ebeadce562..9287c440709f49b57ab0e73e8e0c8ad427f86d1f 100644 (file)
@@ -870,6 +870,7 @@ RESET enable_seqscan;
 RESET enable_indexscan;
 RESET enable_bitmapscan;
 DROP INDEX wowidx;
+ALTER TABLE test_tsvector SET (parallel_workers = 2);
 CREATE INDEX wowidx ON test_tsvector USING gin (a);
 SET enable_seqscan=OFF;
 -- GIN only supports bitmapscan, so no need to test plain indexscan
index 21db0db81d6cc3b2db0d98ebc85fdbb2bc08f22f..d28ed1c1e851cafb1f4f979926a6fc47892a7d87 100644 (file)
@@ -857,6 +857,7 @@ SELECT count(*) FROM testjsonb WHERE j @? '$';
 SELECT count(*) FROM testjsonb WHERE j @? '$.public';
 SELECT count(*) FROM testjsonb WHERE j @? '$.bar';
 
+ALTER TABLE testjsonb SET (parallel_workers = 2);
 CREATE INDEX jidx ON testjsonb USING gin (j);
 SET enable_seqscan = off;
 
@@ -945,7 +946,7 @@ SELECT count(*) FROM testjsonb WHERE j = '{"pos":98, "line":371, "node":"CBA", "
 
 --gin path opclass
 DROP INDEX jidx;
-CREATE INDEX jidx ON testjsonb USING gin (j jsonb_path_ops);
+CREATE INDEX CONCURRENTLY jidx ON testjsonb USING gin (j jsonb_path_ops);
 SET enable_seqscan = off;
 
 SELECT count(*) FROM testjsonb WHERE j @> '{"wait":null}';
index fbd26cdba459fb08c9534ff9826f38f435558554..dc74aa0c889b375e157f413bc2d0a40bbdd3ef1f 100644 (file)
@@ -222,6 +222,7 @@ RESET enable_bitmapscan;
 
 DROP INDEX wowidx;
 
+ALTER TABLE test_tsvector SET (parallel_workers = 2);
 CREATE INDEX wowidx ON test_tsvector USING gin (a);
 
 SET enable_seqscan=OFF;