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

Commit725da00

Browse files
committed
make regression tests more stable
1 parentbe634f0 commit725da00

File tree

2 files changed

+64
-48
lines changed

2 files changed

+64
-48
lines changed

‎expected/pathman_rowmarks.out

Lines changed: 56 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -169,6 +169,8 @@ FOR SHARE;
169169
(1 row)
170170

171171
/* Check updates (plan) */
172+
SET enable_hashjoin = f;/* Hash Semi Join on 10 vs Hash Join on 9.6 */
173+
SET enable_mergejoin = f;/* Merge Semi Join on 10 vs Merge Join on 9.6 */
172174
EXPLAIN (COSTS OFF)
173175
UPDATE rowmarks.second SET id = 2
174176
WHERE rowmarks.second.id IN (SELECT id FROM rowmarks.first WHERE id = 1);
@@ -187,38 +189,38 @@ WHERE rowmarks.second.id IN (SELECT id FROM rowmarks.first WHERE id = 1);
187189
EXPLAIN (COSTS OFF)
188190
UPDATE rowmarks.second SET id = 2
189191
WHERE rowmarks.second.id IN (SELECT id FROM rowmarks.first WHERE id < 1);
190-
QUERY PLAN
191-
---------------------------------------------------
192+
QUERY PLAN
193+
-----------------------------------------------
192194
Update on second
193-
->Hash Join
194-
Hash Cond: (second.id = first_0.id)
195-
->Seq Scan on second
196-
-> Hash
197-
->HashAggregate
198-
Group Key:first_0.id
199-
-> Append
200-
-> Seq Scan onfirst_0
201-
Filter: (id < 1)
202-
-> Seq Scan onfirst_1
203-
Filter: (id < 1)
204-
-> Seq Scan onfirst_2
205-
Filter: (id < 1)
206-
-> Seq Scan onfirst_3
207-
Filter: (id < 1)
208-
->Seq Scan on first_4
209-
Filter: (id < 1)
195+
->Nested Loop
196+
Join Filter: (second.id = first_0.id)
197+
->HashAggregate
198+
Group Key: first_0.id
199+
->Append
200+
-> Seq Scan onfirst_0
201+
Filter: (id < 1)
202+
-> Seq Scan onfirst_1
203+
Filter: (id < 1)
204+
-> Seq Scan onfirst_2
205+
Filter: (id < 1)
206+
-> Seq Scan onfirst_3
207+
Filter: (id < 1)
208+
-> Seq Scan onfirst_4
209+
Filter: (id < 1)
210+
->Materialize
211+
-> Seq Scan on second
210212
(18 rows)
211213

212214
EXPLAIN (COSTS OFF)
213215
UPDATE rowmarks.second SET id = 2
214216
WHERE rowmarks.second.id IN (SELECT id FROM rowmarks.first WHERE id = 1 OR id = 2);
215-
QUERY PLAN
216-
---------------------------------------------
217+
QUERY PLAN
218+
-----------------------------------------------
217219
Update on second
218-
->Hash Semi Join
219-
Hash Cond: (second.id = first_0.id)
220+
->Nested Loop Semi Join
221+
Join Filter: (second.id = first_0.id)
220222
-> Seq Scan on second
221-
->Hash
223+
->Materialize
222224
-> Append
223225
-> Seq Scan on first_0
224226
Filter: (id = 1)
@@ -242,6 +244,8 @@ RETURNING *, tableoid::regclass;
242244
Filter: (id = 1)
243245
(8 rows)
244246

247+
SET enable_hashjoin = t;
248+
SET enable_mergejoin = t;
245249
/* Check updates (execution) */
246250
UPDATE rowmarks.second SET id = 1
247251
WHERE rowmarks.second.id IN (SELECT id FROM rowmarks.first WHERE id = 1 OR id = 2)
@@ -253,6 +257,8 @@ RETURNING *, tableoid::regclass;
253257
(2 rows)
254258

255259
/* Check deletes (plan) */
260+
SET enable_hashjoin = f;/* Hash Semi Join on 10 vs Hash Join on 9.6 */
261+
SET enable_mergejoin = f;/* Merge Semi Join on 10 vs Merge Join on 9.6 */
256262
EXPLAIN (COSTS OFF)
257263
DELETE FROM rowmarks.second
258264
WHERE rowmarks.second.id IN (SELECT id FROM rowmarks.first WHERE id = 1);
@@ -271,45 +277,47 @@ WHERE rowmarks.second.id IN (SELECT id FROM rowmarks.first WHERE id = 1);
271277
EXPLAIN (COSTS OFF)
272278
DELETE FROM rowmarks.second
273279
WHERE rowmarks.second.id IN (SELECT id FROM rowmarks.first WHERE id < 1);
274-
QUERY PLAN
275-
---------------------------------------------------
280+
QUERY PLAN
281+
-----------------------------------------------
276282
Delete on second
277-
->Hash Join
278-
Hash Cond: (second.id = first_0.id)
279-
->Seq Scan on second
280-
-> Hash
281-
->HashAggregate
282-
Group Key:first_0.id
283-
-> Append
284-
-> Seq Scan onfirst_0
285-
Filter: (id < 1)
286-
-> Seq Scan onfirst_1
287-
Filter: (id < 1)
288-
-> Seq Scan onfirst_2
289-
Filter: (id < 1)
290-
-> Seq Scan onfirst_3
291-
Filter: (id < 1)
292-
->Seq Scan on first_4
293-
Filter: (id < 1)
283+
->Nested Loop
284+
Join Filter: (second.id = first_0.id)
285+
->HashAggregate
286+
Group Key: first_0.id
287+
->Append
288+
-> Seq Scan onfirst_0
289+
Filter: (id < 1)
290+
-> Seq Scan onfirst_1
291+
Filter: (id < 1)
292+
-> Seq Scan onfirst_2
293+
Filter: (id < 1)
294+
-> Seq Scan onfirst_3
295+
Filter: (id < 1)
296+
-> Seq Scan onfirst_4
297+
Filter: (id < 1)
298+
->Materialize
299+
-> Seq Scan on second
294300
(18 rows)
295301

296302
EXPLAIN (COSTS OFF)
297303
DELETE FROM rowmarks.second
298304
WHERE rowmarks.second.id IN (SELECT id FROM rowmarks.first WHERE id = 1 OR id = 2);
299-
QUERY PLAN
300-
---------------------------------------------
305+
QUERY PLAN
306+
-----------------------------------------------
301307
Delete on second
302-
->Hash Semi Join
303-
Hash Cond: (second.id = first_0.id)
308+
->Nested Loop Semi Join
309+
Join Filter: (second.id = first_0.id)
304310
-> Seq Scan on second
305-
->Hash
311+
->Materialize
306312
-> Append
307313
-> Seq Scan on first_0
308314
Filter: (id = 1)
309315
-> Seq Scan on first_1
310316
Filter: (id = 2)
311317
(10 rows)
312318

319+
SET enable_hashjoin = t;
320+
SET enable_mergejoin = t;
313321
DROP SCHEMA rowmarks CASCADE;
314322
NOTICE: drop cascades to 7 other objects
315323
DETAIL: drop cascades to table rowmarks.first

‎sql/pathman_rowmarks.sql

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,8 @@ WHERE id = (SELECT id FROM rowmarks.second
5959
FOR SHARE;
6060

6161
/* Check updates (plan)*/
62+
SET enable_hashjoin= f;/* Hash Semi Join on 10 vs Hash Join on 9.6*/
63+
SET enable_mergejoin= f;/* Merge Semi Join on 10 vs Merge Join on 9.6*/
6264
EXPLAIN (COSTS OFF)
6365
UPDATErowmarks.secondSET id=2
6466
WHERErowmarks.second.idIN (SELECT idFROMrowmarks.firstWHERE id=1);
@@ -72,13 +74,17 @@ EXPLAIN (COSTS OFF)
7274
UPDATErowmarks.secondSET id=2
7375
WHERErowmarks.second.idIN (SELECT idFROMrowmarks.firstWHERE id=1)
7476
RETURNING*, tableoid::regclass;
77+
SET enable_hashjoin= t;
78+
SET enable_mergejoin= t;
7579

7680
/* Check updates (execution)*/
7781
UPDATErowmarks.secondSET id=1
7882
WHERErowmarks.second.idIN (SELECT idFROMrowmarks.firstWHERE id=1OR id=2)
7983
RETURNING*, tableoid::regclass;
8084

8185
/* Check deletes (plan)*/
86+
SET enable_hashjoin= f;/* Hash Semi Join on 10 vs Hash Join on 9.6*/
87+
SET enable_mergejoin= f;/* Merge Semi Join on 10 vs Merge Join on 9.6*/
8288
EXPLAIN (COSTS OFF)
8389
DELETEFROMrowmarks.second
8490
WHERErowmarks.second.idIN (SELECT idFROMrowmarks.firstWHERE id=1);
@@ -88,6 +94,8 @@ WHERE rowmarks.second.id IN (SELECT id FROM rowmarks.first WHERE id < 1);
8894
EXPLAIN (COSTS OFF)
8995
DELETEFROMrowmarks.second
9096
WHERErowmarks.second.idIN (SELECT idFROMrowmarks.firstWHERE id=1OR id=2);
97+
SET enable_hashjoin= t;
98+
SET enable_mergejoin= t;
9199

92100

93101

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp