Skip to content

Commit 56ea5a8

Browse files
committed
pathman: join tests
1 parent 26ab97d commit 56ea5a8

File tree

2 files changed

+45
-0
lines changed

2 files changed

+45
-0
lines changed

contrib/pg_pathman/expected/pg_pathman.out

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -425,6 +425,40 @@ EXPLAIN (COSTS OFF) SELECT * FROM test.range_rel_1 UNION ALL SELECT * FROM test.
425425
-> Index Scan using range_rel_2_dt_idx on range_rel_2
426426
(4 rows)
427427

428+
/*
429+
* Join
430+
*/
431+
SET enable_indexscan = OFF;
432+
EXPLAIN (COSTS OFF)
433+
SELECT * FROM test.range_rel j1
434+
JOIN test.range_rel j2 on j2.id = j1.id
435+
JOIN test.num_range_rel j3 on j3.id = j1.id
436+
WHERE j1.dt < '2015-03-01' AND j2.dt >= '2015-02-01' ORDER BY j2.dt;
437+
QUERY PLAN
438+
---------------------------------------------------------------------------------
439+
Sort
440+
Sort Key: j2.dt
441+
-> Nested Loop
442+
Join Filter: (j1.id = j2.id)
443+
-> Nested Loop
444+
Join Filter: (j1.id = j3.id)
445+
-> Append
446+
-> Seq Scan on num_range_rel_1 j3
447+
-> Seq Scan on num_range_rel_2 j3_1
448+
-> Seq Scan on num_range_rel_3 j3_2
449+
-> Seq Scan on num_range_rel_4 j3_3
450+
-> Materialize
451+
-> Append
452+
-> Seq Scan on range_rel_1 j1
453+
-> Seq Scan on range_rel_2 j1_1
454+
-> Materialize
455+
-> Append
456+
-> Index Scan using range_rel_2_dt_idx on range_rel_2 j2
457+
-> Index Scan using range_rel_3_dt_idx on range_rel_3 j2_1
458+
-> Index Scan using range_rel_4_dt_idx on range_rel_4 j2_2
459+
(20 rows)
460+
461+
SET enable_indexscan = ON;
428462
/*
429463
* Test CTE query
430464
*/

contrib/pg_pathman/sql/pg_pathman.sql

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -104,6 +104,17 @@ SET enable_seqscan = OFF;
104104
EXPLAIN (COSTS OFF) SELECT * FROM test.range_rel WHERE dt < '2015-03-01' ORDER BY dt;
105105
EXPLAIN (COSTS OFF) SELECT * FROM test.range_rel_1 UNION ALL SELECT * FROM test.range_rel_2 ORDER BY dt;
106106

107+
/*
108+
* Join
109+
*/
110+
SET enable_indexscan = OFF;
111+
EXPLAIN (COSTS OFF)
112+
SELECT * FROM test.range_rel j1
113+
JOIN test.range_rel j2 on j2.id = j1.id
114+
JOIN test.num_range_rel j3 on j3.id = j1.id
115+
WHERE j1.dt < '2015-03-01' AND j2.dt >= '2015-02-01' ORDER BY j2.dt;
116+
SET enable_indexscan = ON;
117+
107118
/*
108119
* Test CTE query
109120
*/

0 commit comments

Comments
 (0)