• R/O
  • HTTP
  • SSH
  • HTTPS

pg_hint_plan: コミット

firtst release


コミットメタ情報

リビジョンe9aa35d57245370b3b7e2a677a0a0a65d9cfef4b (tree)
日時2013-10-18 10:24:00
作者Takashi Suzuki <suzuki.takashi@metr...>
コミッターTakashi Suzuki

ログメッセージ

pg_hint_plan動作確認試験の予測結果をPG93の動作に合わせて変更した。

変更サマリ

差分

--- a/expected/pg_hint_plan.out
+++ b/expected/pg_hint_plan.out
@@ -211,15 +211,14 @@ not used hint:
211211 duplication hint:
212212 error hint:
213213
214- QUERY PLAN
215-------------------------------------------
216- Nested Loop
217- -> Index Scan using t2_pkey on t2
218- -> Bitmap Heap Scan on t1
219- Recheck Cond: (id = t2.id)
220- -> Bitmap Index Scan on t1_pkey
221- Index Cond: (id = t2.id)
222-(6 rows)
214+ QUERY PLAN
215+--------------------------------------------
216+ Hash Join
217+ Hash Cond: (t1.id = t2.id)
218+ -> Index Scan using t1_pkey on t1
219+ -> Hash
220+ -> Index Scan using t2_pkey on t2
221+(5 rows)
223222
224223 /*+Set(work_mem "1M")*/
225224 EXPLAIN (COSTS false) SELECT * FROM t1, t2 WHERE t1.id = t2.id;
@@ -563,18 +562,19 @@ error hint:
563562 QUERY PLAN
564563 --------------------------------------------------
565564 Merge Join
566- Merge Cond: (t1.id = t4.id)
565+ Merge Cond: (t1.id = t3.id)
567566 -> Merge Join
568- Merge Cond: (t1.id = t3.id)
567+ Merge Cond: (t1.id = t2.id)
568+ -> Index Scan using t1_pkey on t1
569+ -> Index Scan using t2_pkey on t2
570+ -> Materialize
569571 -> Merge Join
570- Merge Cond: (t1.id = t2.id)
571- -> Index Scan using t1_pkey on t1
572- -> Index Scan using t2_pkey on t2
573- -> Index Scan using t3_pkey on t3
574- -> Sort
575- Sort Key: t4.id
576- -> Seq Scan on t4
577-(12 rows)
572+ Merge Cond: (t3.id = t4.id)
573+ -> Index Scan using t3_pkey on t3
574+ -> Sort
575+ Sort Key: t4.id
576+ -> Seq Scan on t4
577+(13 rows)
578578
579579 /*+HashJoin(t3 t4 t1 t2)*/
580580 EXPLAIN (COSTS false) SELECT * FROM t1, t2, t3, t4 WHERE t1.id = t2.id AND t1.id = t3.id AND t1.id = t4.id;
@@ -640,18 +640,19 @@ error hint:
640640 QUERY PLAN
641641 --------------------------------------------------
642642 Merge Join
643- Merge Cond: (t1.id = t4.id)
643+ Merge Cond: (t1.id = t3.id)
644644 -> Merge Join
645- Merge Cond: (t1.id = t3.id)
645+ Merge Cond: (t1.id = t2.id)
646+ -> Index Scan using t1_pkey on t1
647+ -> Index Scan using t2_pkey on t2
648+ -> Materialize
646649 -> Merge Join
647- Merge Cond: (t1.id = t2.id)
648- -> Index Scan using t1_pkey on t1
649- -> Index Scan using t2_pkey on t2
650- -> Index Scan using t3_pkey on t3
651- -> Sort
652- Sort Key: t4.id
653- -> Seq Scan on t4
654-(12 rows)
650+ Merge Cond: (t3.id = t4.id)
651+ -> Index Scan using t3_pkey on t3
652+ -> Sort
653+ Sort Key: t4.id
654+ -> Seq Scan on t4
655+(13 rows)
655656
656657 /*+Leading( */
657658 EXPLAIN (COSTS false) SELECT * FROM t1, t2, t3, t4 WHERE t1.id = t2.id AND t1.id = t3.id AND t1.id = t4.id;
@@ -3006,13 +3007,14 @@ not used hint:
30063007 duplication hint:
30073008 error hint:
30083009
3009- QUERY PLAN
3010---------------------------------------
3011- Merge Full Join
3012- Merge Cond: (t1.id = t2.id)
3013- -> Index Scan using t1_pkey on t1
3014- -> Index Scan using t2_pkey on t2
3015-(4 rows)
3010+ QUERY PLAN
3011+------------------------------
3012+ Hash Full Join
3013+ Hash Cond: (t1.id = t2.id)
3014+ -> Seq Scan on t1
3015+ -> Hash
3016+ -> Seq Scan on t2
3017+(5 rows)
30163018
30173019 -- inherite table test
30183020 SET constraint_exclusion TO off;
@@ -5987,6 +5989,7 @@ error hint:
59875989 QUERY PLAN
59885990 --------------------------------------------------
59895991 Nested Loop
5992+ Join Filter: (t3.id = t4.id)
59905993 -> Nested Loop
59915994 Join Filter: (t1.val = t3.val)
59925995 -> Hash Join
@@ -5996,8 +5999,7 @@ error hint:
59965999 -> Hash
59976000 -> Seq Scan on t2
59986001 -> Seq Scan on t3
5999- -> Index Scan using t4_pkey on t4
6000- Index Cond: (id = t3.id)
6002+ -> Seq Scan on t4
60016003 (12 rows)
60026004
60036005 /*+Leading(((t1 t2) t3)) MergeJoin(t1 t2 t3 t4)*/
@@ -6248,13 +6250,15 @@ error hint:
62486250 Merge Cond: (t1.id = t2.id)
62496251 -> Index Scan using t1_pkey on t1
62506252 -> Index Scan using t2_pkey on t2
6251- -> Index Scan using t3_pkey on t3
6253+ -> Sort
6254+ Sort Key: t3.id
6255+ -> Seq Scan on t3
62526256 -> Sort
62536257 Sort Key: t4.id
62546258 -> Seq Scan on t4
62556259 -> Index Scan using t5_idaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa on t5
62566260 Index Cond: (id = t1.id)
6257-(15 rows)
6261+(17 rows)
62586262
62596263 /*+Leading(((((t5 t4)t3)t2)t1))*/
62606264 EXPLAIN (COSTS false) SELECT * FROM t1, t2, t3, t4, t5 WHERE t1.id = t2.id AND t1.id = t3.id AND t1.id = t4.id AND t1.id = t5.id;
@@ -6336,13 +6340,15 @@ error hint:
63366340 -> Materialize
63376341 -> Merge Join
63386342 Merge Cond: (t3.id = t1.id)
6339- -> Index Scan using t3_pkey on t3
6343+ -> Sort
6344+ Sort Key: t3.id
6345+ -> Seq Scan on t3
63406346 -> Materialize
63416347 -> Merge Join
63426348 Merge Cond: (t2.id = t1.id)
63436349 -> Index Scan using t2_pkey on t2
63446350 -> Index Scan using t1_pkey on t1
6345-(17 rows)
6351+(19 rows)
63466352
63476353 /*+Leading((((t1 t2)t3)(t4 t5)))*/
63486354 EXPLAIN (COSTS false) SELECT * FROM t1, t2, t3, t4, t5 WHERE t1.id = t2.id AND t1.id = t3.id AND t1.id = t4.id AND t1.id = t5.id;
@@ -6363,13 +6369,15 @@ error hint:
63636369 Merge Cond: (t1.id = t2.id)
63646370 -> Index Scan using t1_pkey on t1
63656371 -> Index Scan using t2_pkey on t2
6366- -> Index Scan using t3_pkey on t3
6372+ -> Sort
6373+ Sort Key: t3.id
6374+ -> Seq Scan on t3
63676375 -> Materialize
63686376 -> Merge Join
63696377 Merge Cond: (t4.id = t5.id)
63706378 -> Index Scan using t4_pkey on t4
63716379 -> Index Scan using t5_idaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa on t5
6372-(14 rows)
6380+(16 rows)
63736381
63746382 /*+Leading((((t5 t4)t3)(t2 t1)))*/
63756383 EXPLAIN (COSTS false) SELECT * FROM t1, t2, t3, t4, t5 WHERE t1.id = t2.id AND t1.id = t3.id AND t1.id = t4.id AND t1.id = t5.id;
旧リポジトリブラウザで表示