Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit5a59315

Browse files
committed
Increase parallel bitmap scan test coverage.
Author: Dilip KumarDiscussion:https://postgr.es/m/20170331184603.qcp7t4md5bzxbx32@alap3.anarazel.de
1 parent6f1b9aa commit5a59315

File tree

2 files changed

+52
-8
lines changed

2 files changed

+52
-8
lines changed

‎src/test/regress/expected/select_parallel.out

Lines changed: 34 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -172,22 +172,50 @@ reset enable_bitmapscan;
172172
-- test parallel bitmap heap scan.
173173
set enable_seqscan to off;
174174
set enable_indexscan to off;
175+
set enable_hashjoin to off;
176+
set enable_mergejoin to off;
177+
set enable_material to off;
178+
set effective_io_concurrency=50;
179+
set work_mem='64kB'; --set small work mem to force lossy pages
175180
explain (costs off)
176-
selectcount((unique1)) from tenk1where hundred > 1;
181+
select count(*) from tenk1, tenk2wheretenk1.hundred > 1 and tenk2.thousand=0;
177182
QUERY PLAN
178183
------------------------------------------------------------
179-
Finalize Aggregate
180-
-> Gather
181-
Workers Planned: 4
182-
-> Partial Aggregate
184+
Aggregate
185+
-> Nested Loop
186+
-> Seq Scan on tenk2
187+
Filter: (thousand = 0)
188+
-> Gather
189+
Workers Planned: 4
183190
-> Parallel Bitmap Heap Scan on tenk1
184191
Recheck Cond: (hundred > 1)
185192
-> Bitmap Index Scan on tenk1_hundred
186193
Index Cond: (hundred > 1)
187-
(8 rows)
194+
(10 rows)
195+
196+
select count(*) from tenk1, tenk2 where tenk1.hundred > 1 and tenk2.thousand=0;
197+
count
198+
-------
199+
98000
200+
(1 row)
201+
202+
create table bmscantest (a int, t text);
203+
insert into bmscantest select r, 'fooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo' FROM generate_series(1,100000) r;
204+
create index i_bmtest ON bmscantest(a);
205+
select count(*) from bmscantest where a>1;
206+
count
207+
-------
208+
99999
209+
(1 row)
188210

189211
reset enable_seqscan;
190212
reset enable_indexscan;
213+
reset enable_hashjoin;
214+
reset enable_mergejoin;
215+
reset enable_material;
216+
reset effective_io_concurrency;
217+
reset work_mem;
218+
drop table bmscantest;
191219
-- test parallel merge join path.
192220
set enable_hashjoin to off;
193221
set enable_nestloop to off;

‎src/test/regress/sql/select_parallel.sql

Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -67,12 +67,28 @@ reset enable_bitmapscan;
6767
-- test parallel bitmap heap scan.
6868
set enable_seqscan to off;
6969
set enable_indexscan to off;
70-
70+
set enable_hashjoin to off;
71+
set enable_mergejoin to off;
72+
set enable_material to off;
73+
set effective_io_concurrency=50;
74+
set work_mem='64kB';--set small work mem to force lossy pages
7175
explain (costs off)
72-
selectcount((unique1))from tenk1where hundred>1;
76+
selectcount(*)from tenk1, tenk2wheretenk1.hundred>1andtenk2.thousand=0;
77+
selectcount(*)from tenk1, tenk2wheretenk1.hundred>1andtenk2.thousand=0;
78+
79+
createtablebmscantest (aint, ttext);
80+
insert into bmscantestselect r,'fooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo'FROM generate_series(1,100000) r;
81+
createindexi_bmtestON bmscantest(a);
82+
selectcount(*)from bmscantestwhere a>1;
7383

7484
reset enable_seqscan;
7585
reset enable_indexscan;
86+
reset enable_hashjoin;
87+
reset enable_mergejoin;
88+
reset enable_material;
89+
reset effective_io_concurrency;
90+
reset work_mem;
91+
droptable bmscantest;
7692

7793
-- test parallel merge join path.
7894
set enable_hashjoin to off;

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp