diff --git a/test/JDBC/expected/BABEL-3592.out b/test/JDBC/expected/BABEL-3592.out index 0058bc5980..90866cb78c 100644 --- a/test/JDBC/expected/BABEL-3592.out +++ b/test/JDBC/expected/BABEL-3592.out @@ -1,3 +1,4 @@ +-- tsql drop procedure if exists babel_3592_insert_multiline go @@ -25,14 +26,24 @@ go create table babel_3592_t3(a3 int PRIMARY KEY, b3 int) go -select set_config('babelfishpg_tsql.explain_costs', 'off', false) -go -~~START~~ -text -off -~~END~~ + +-- psql +ANALYZE master_dbo.babel_3592_t1 +GO +-- psql +ANALYZE master_dbo.babel_3592_t2 +GO + +-- psql +ANALYZE master_dbo.babel_3592_t3 +GO + +-- tsql + +-- select set_config('babelfishpg_tsql.explain_costs', 'off', false) +-- go select set_config('babelfishpg_tsql.enable_pg_hint', 'on', false); go ~~START~~ @@ -77,27 +88,25 @@ GO text Query Text: EXEC babel_3592_insert_multiline Query Text: insert into babel_3592_t2 select * from babel_3592_t1 where b1 = 1 - -> Insert on babel_3592_t2 - -> Bitmap Heap Scan on babel_3592_t1 - Recheck Cond: (b1 = 1) - -> Bitmap Index Scan on index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836 - Index Cond: (b1 = 1) + -> Insert on babel_3592_t2 (cost=0.00..0.00 rows=0 width=0) + -> Seq Scan on babel_3592_t1 (cost=0.00..0.00 rows=1 width=8) + Filter: (b1 = 1) Query Text: insert/*+ indexscan(babel_3592_t1 index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836) */ into babel_3592_t2 select * from babel_3592_t1 where b1 = 1 - -> Insert on babel_3592_t2 - -> Index Scan using index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836 on babel_3592_t1 + -> Insert on babel_3592_t2 (cost=0.12..8.14 rows=0 width=0) + -> Index Scan using index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836 on babel_3592_t1 (cost=0.12..8.14 rows=1 width=8) Index Cond: (b1 = 1) Query Text: insert/*+ indexscan(babel_3592_t1 index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836) */ into babel_3592_t2 select * from babel_3592_t1 where b1 = 1 - -> Insert on babel_3592_t2 - -> Index Scan using index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836 on babel_3592_t1 + -> Insert on babel_3592_t2 (cost=0.12..8.14 rows=0 width=0) + -> Index Scan using index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836 on babel_3592_t1 (cost=0.12..8.14 rows=1 width=8) Index Cond: (b1 = 1) ~~END~~ ~~START~~ text -Babelfish T-SQL Batch Parsing Time: 0.089 ms +Babelfish T-SQL Batch Parsing Time: 0.068 ms ~~END~~ @@ -107,14 +116,14 @@ GO text Query Text: EXEC babel_3592_insert_singleline Query Text: insert/*+ indexscan(babel_3592_t1 index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836) */ into babel_3592_t2 select * from babel_3592_t1 where b1 = 1 - -> Insert on babel_3592_t2 - -> Index Scan using index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836 on babel_3592_t1 + -> Insert on babel_3592_t2 (cost=0.12..8.14 rows=0 width=0) + -> Index Scan using index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836 on babel_3592_t1 (cost=0.12..8.14 rows=1 width=8) Index Cond: (b1 = 1) ~~END~~ ~~START~~ text -Babelfish T-SQL Batch Parsing Time: 0.117 ms +Babelfish T-SQL Batch Parsing Time: 0.071 ms ~~END~~ @@ -165,27 +174,25 @@ GO text Query Text: EXEC babel_3592_insert_multiline Query Text: insert into babel_3592_t2 select * from babel_3592_t1 where b1 = 1 - -> Insert on babel_3592_t2 - -> Bitmap Heap Scan on babel_3592_t1 - Recheck Cond: (b1 = 1) - -> Bitmap Index Scan on index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836 - Index Cond: (b1 = 1) + -> Insert on babel_3592_t2 (cost=0.00..0.00 rows=0 width=0) + -> Seq Scan on babel_3592_t1 (cost=0.00..0.00 rows=1 width=8) + Filter: (b1 = 1) Query Text: insert/*+ indexscan(babel_3592_t1 index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836) */ into babel_3592_t2 select * from babel_3592_t1 where b1 = 1 - -> Insert on babel_3592_t2 - -> Index Scan using index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836 on babel_3592_t1 + -> Insert on babel_3592_t2 (cost=0.12..8.14 rows=0 width=0) + -> Index Scan using index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836 on babel_3592_t1 (cost=0.12..8.14 rows=1 width=8) Index Cond: (b1 = 1) Query Text: insert/*+ indexscan(babel_3592_t1 index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836) */ into babel_3592_t2 select * from babel_3592_t1 where b1 = 1 - -> Insert on babel_3592_t2 - -> Index Scan using index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836 on babel_3592_t1 + -> Insert on babel_3592_t2 (cost=0.12..8.14 rows=0 width=0) + -> Index Scan using index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836 on babel_3592_t1 (cost=0.12..8.14 rows=1 width=8) Index Cond: (b1 = 1) ~~END~~ ~~START~~ text -Babelfish T-SQL Batch Parsing Time: 0.083 ms +Babelfish T-SQL Batch Parsing Time: 0.091 ms ~~END~~ @@ -195,14 +202,14 @@ GO text Query Text: EXEC babel_3592_updates_singleline Query Text: update/*+ indexscan(babel_3592_t1 index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836) */ babel_3592_t1 set a1 = 1 where b1 = 1 - -> Update on babel_3592_t1 - -> Index Scan using index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836 on babel_3592_t1 + -> Update on babel_3592_t1 (cost=0.12..8.14 rows=0 width=0) + -> Index Scan using index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836 on babel_3592_t1 (cost=0.12..8.14 rows=1 width=10) Index Cond: (b1 = 1) ~~END~~ ~~START~~ text -Babelfish T-SQL Batch Parsing Time: 0.083 ms +Babelfish T-SQL Batch Parsing Time: 0.095 ms ~~END~~ @@ -254,27 +261,25 @@ GO text Query Text: EXEC babel_3592_insert_multiline Query Text: insert into babel_3592_t2 select * from babel_3592_t1 where b1 = 1 - -> Insert on babel_3592_t2 - -> Bitmap Heap Scan on babel_3592_t1 - Recheck Cond: (b1 = 1) - -> Bitmap Index Scan on index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836 - Index Cond: (b1 = 1) + -> Insert on babel_3592_t2 (cost=0.00..0.00 rows=0 width=0) + -> Seq Scan on babel_3592_t1 (cost=0.00..0.00 rows=1 width=8) + Filter: (b1 = 1) Query Text: insert/*+ indexscan(babel_3592_t1 index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836) */ into babel_3592_t2 select * from babel_3592_t1 where b1 = 1 - -> Insert on babel_3592_t2 - -> Index Scan using index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836 on babel_3592_t1 + -> Insert on babel_3592_t2 (cost=0.12..8.14 rows=0 width=0) + -> Index Scan using index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836 on babel_3592_t1 (cost=0.12..8.14 rows=1 width=8) Index Cond: (b1 = 1) Query Text: insert/*+ indexscan(babel_3592_t1 index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836) */ into babel_3592_t2 select * from babel_3592_t1 where b1 = 1 - -> Insert on babel_3592_t2 - -> Index Scan using index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836 on babel_3592_t1 + -> Insert on babel_3592_t2 (cost=0.12..8.14 rows=0 width=0) + -> Index Scan using index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836 on babel_3592_t1 (cost=0.12..8.14 rows=1 width=8) Index Cond: (b1 = 1) ~~END~~ ~~START~~ text -Babelfish T-SQL Batch Parsing Time: 0.078 ms +Babelfish T-SQL Batch Parsing Time: 0.056 ms ~~END~~ @@ -284,14 +289,14 @@ GO text Query Text: EXEC babel_3592_delete_singleline Query Text: delete/*+ indexscan(babel_3592_t1 index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836) */ from babel_3592_t1 where b1 = 1 - -> Delete on babel_3592_t1 - -> Index Scan using index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836 on babel_3592_t1 + -> Delete on babel_3592_t1 (cost=0.12..8.14 rows=0 width=0) + -> Index Scan using index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836 on babel_3592_t1 (cost=0.12..8.14 rows=1 width=6) Index Cond: (b1 = 1) ~~END~~ ~~START~~ text -Babelfish T-SQL Batch Parsing Time: 0.079 ms +Babelfish T-SQL Batch Parsing Time: 0.063 ms ~~END~~ @@ -357,89 +362,82 @@ GO text Query Text: EXEC babel_3592_proc_mixed_statements Query Text: update/*+ indexscan(babel_3592_t1 index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836) */ babel_3592_t1 set a1 = 1 where b1 = 1 - -> Update on babel_3592_t1 - -> Index Scan using index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836 on babel_3592_t1 + -> Update on babel_3592_t1 (cost=0.12..8.14 rows=0 width=0) + -> Index Scan using index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836 on babel_3592_t1 (cost=0.12..8.14 rows=1 width=10) Index Cond: (b1 = 1) Query Text: select/*+ nestloop(babel_3592_t1 babel_3592_t2) leading(babel_3592_t1 babel_3592_t2)*/ * from babel_3592_t1 inner join babel_3592_t2 on babel_3592_t1.a1 = babel_3592_t2.a2 - -> Nested Loop - -> Seq Scan on babel_3592_t1 - -> Index Scan using babel_3592_t2_pkey on babel_3592_t2 - Index Cond: (a2 = babel_3592_t1.a1) + -> Nested Loop (cost=0.00..0.01 rows=1 width=16) + Join Filter: (babel_3592_t1.a1 = babel_3592_t2.a2) + -> Seq Scan on babel_3592_t1 (cost=0.00..0.00 rows=1 width=8) + -> Seq Scan on babel_3592_t2 (cost=0.00..0.00 rows=1 width=8) Query Text: select/*+ mergejoin(babel_3592_t1 babel_3592_t2) leading(babel_3592_t1 babel_3592_t2)*/ * from babel_3592_t1 inner join babel_3592_t2 on babel_3592_t1.a1 = babel_3592_t2.a2 - -> Merge Join + -> Merge Join (cost=0.02..0.05 rows=1 width=16) Merge Cond: (babel_3592_t1.a1 = babel_3592_t2.a2) - -> Index Scan using babel_3592_t1_pkey on babel_3592_t1 - -> Index Scan using babel_3592_t2_pkey on babel_3592_t2 + -> Sort (cost=0.01..0.02 rows=1 width=8) + Sort Key: babel_3592_t1.a1 + -> Seq Scan on babel_3592_t1 (cost=0.00..0.00 rows=1 width=8) + -> Sort (cost=0.01..0.02 rows=1 width=8) + Sort Key: babel_3592_t2.a2 + -> Seq Scan on babel_3592_t2 (cost=0.00..0.00 rows=1 width=8) Query Text: update/*+ indexscan(babel_3592_t1 index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836) */ babel_3592_t1 set a1 = 1 where b1 = 1 - -> Update on babel_3592_t1 - -> Index Scan using index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836 on babel_3592_t1 + -> Update on babel_3592_t1 (cost=0.12..8.14 rows=0 width=0) + -> Index Scan using index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836 on babel_3592_t1 (cost=0.12..8.14 rows=1 width=10) Index Cond: (b1 = 1) Query Text: delete/*+ mergejoin(babel_3592_t1 babel_3592_t2) leading(babel_3592_t1 babel_3592_t2)*/ babel_3592_t1 from babel_3592_t1 inner join babel_3592_t2 on babel_3592_t1.a1 = babel_3592_t2.a2 where b1 = 1 and b2 = 1 - -> Delete on babel_3592_t1 - -> Merge Join + -> Delete on babel_3592_t1 (cost=0.02..0.05 rows=0 width=0) + -> Merge Join (cost=0.02..0.05 rows=1 width=12) Merge Cond: (babel_3592_t1.a1 = babel_3592_t2.a2) - -> Sort + -> Sort (cost=0.01..0.02 rows=1 width=10) Sort Key: babel_3592_t1.a1 - -> Bitmap Heap Scan on babel_3592_t1 - Recheck Cond: (b1 = 1) - -> Bitmap Index Scan on index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836 - Index Cond: (b1 = 1) - -> Sort + -> Seq Scan on babel_3592_t1 (cost=0.00..0.00 rows=1 width=10) + Filter: (b1 = 1) + -> Sort (cost=0.01..0.02 rows=1 width=10) Sort Key: babel_3592_t2.a2 - -> Bitmap Heap Scan on babel_3592_t2 - Recheck Cond: (b2 = 1) - -> Bitmap Index Scan on index_babel_3592_t2_b2babel_359155b730148d8fcf0167f32edb84e3f7d - Index Cond: (b2 = 1) + -> Seq Scan on babel_3592_t2 (cost=0.00..0.00 rows=1 width=10) + Filter: (b2 = 1) Query Text: delete/*+ indexscan(babel_3592_t1 index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836) mergejoin(babel_3592_t1 babel_3592_t2) leading(babel_3592_t1 babel_3592_t2)*/ babel_3592_t1 from babel_3592_t1 left outer join babel_3592_t2 on babel_3592_t1.a1 = babel_3592_t2.a2 where b1 = 1 and b2 = 1 - -> Delete on babel_3592_t1 - -> Merge Join + -> Delete on babel_3592_t1 (cost=8.16..8.19 rows=0 width=0) + -> Merge Join (cost=8.16..8.19 rows=1 width=12) Merge Cond: (babel_3592_t1.a1 = babel_3592_t2.a2) - -> Sort + -> Sort (cost=8.15..8.16 rows=1 width=10) Sort Key: babel_3592_t1.a1 - -> Index Scan using index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836 on babel_3592_t1 + -> Index Scan using index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836 on babel_3592_t1 (cost=0.12..8.14 rows=1 width=10) Index Cond: (b1 = 1) - -> Sort + -> Sort (cost=0.01..0.02 rows=1 width=10) Sort Key: babel_3592_t2.a2 - -> Bitmap Heap Scan on babel_3592_t2 - Recheck Cond: (b2 = 1) - -> Bitmap Index Scan on index_babel_3592_t2_b2babel_359155b730148d8fcf0167f32edb84e3f7d - Index Cond: (b2 = 1) + -> Seq Scan on babel_3592_t2 (cost=0.00..0.00 rows=1 width=10) + Filter: (b2 = 1) Query Text: insert into babel_3592_t2 select * from babel_3592_t1 where b1 = 1 - -> Insert on babel_3592_t2 - -> Bitmap Heap Scan on babel_3592_t1 - Recheck Cond: (b1 = 1) - -> Bitmap Index Scan on index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836 - Index Cond: (b1 = 1) + -> Insert on babel_3592_t2 (cost=0.12..8.14 rows=0 width=0) + -> Index Scan using index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836 on babel_3592_t1 (cost=0.12..8.14 rows=1 width=8) + Index Cond: (b1 = 1) Query Text: insert/*+ indexscan(babel_3592_t1 index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836) */ into babel_3592_t2 select * from babel_3592_t1 where b1 = 1 - -> Insert on babel_3592_t2 - -> Index Scan using index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836 on babel_3592_t1 + -> Insert on babel_3592_t2 (cost=0.12..8.14 rows=0 width=0) + -> Index Scan using index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836 on babel_3592_t1 (cost=0.12..8.14 rows=1 width=8) Index Cond: (b1 = 1) Query Text: insert/*+ indexscan(babel_3592_t1 index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836) */ into babel_3592_t2 select * from babel_3592_t1 where b1 = 1 - -> Insert on babel_3592_t2 - -> Index Scan using index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836 on babel_3592_t1 + -> Insert on babel_3592_t2 (cost=0.12..8.14 rows=0 width=0) + -> Index Scan using index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836 on babel_3592_t1 (cost=0.12..8.14 rows=1 width=8) Index Cond: (b1 = 1) Query Text: update babel_3592_t1 set a1 = 1 where b1 = 1 - -> Update on babel_3592_t1 - -> Bitmap Heap Scan on babel_3592_t1 - Recheck Cond: (b1 = 1) - -> Bitmap Index Scan on index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836 - Index Cond: (b1 = 1) + -> Update on babel_3592_t1 (cost=0.12..8.14 rows=0 width=0) + -> Index Scan using index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836 on babel_3592_t1 (cost=0.12..8.14 rows=1 width=10) + Index Cond: (b1 = 1) Query Text: select/*+ indexscan(babel_3592_t1 index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836) indexscan(babel_3592_t2 index_babel_3592_t2_b2babel_359155b730148d8fcf0167f32edb84e3f7d) */ * from babel_3592_t1 , babel_3592_t2 where b1 = 1 and b2 = 1 - -> Nested Loop - -> Index Scan using index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836 on babel_3592_t1 + -> Nested Loop (cost=0.25..16.30 rows=1 width=16) + -> Index Scan using index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836 on babel_3592_t1 (cost=0.12..8.14 rows=1 width=8) Index Cond: (b1 = 1) - -> Materialize - -> Index Scan using index_babel_3592_t2_b2babel_359155b730148d8fcf0167f32edb84e3f7d on babel_3592_t2 - Index Cond: (b2 = 1) + -> Index Scan using index_babel_3592_t2_b2babel_359155b730148d8fcf0167f32edb84e3f7d on babel_3592_t2 (cost=0.12..8.14 rows=1 width=8) + Index Cond: (b2 = 1) ~~END~~ ~~START~~ text -Babelfish T-SQL Batch Parsing Time: 0.080 ms +Babelfish T-SQL Batch Parsing Time: 0.068 ms ~~END~~ diff --git a/test/JDBC/expected/parallel_query/BABEL-3592.out b/test/JDBC/expected/parallel_query/BABEL-3592.out index d9dbc23eea..014d035e03 100644 --- a/test/JDBC/expected/parallel_query/BABEL-3592.out +++ b/test/JDBC/expected/parallel_query/BABEL-3592.out @@ -1,3 +1,4 @@ +-- tsql drop procedure if exists babel_3592_insert_multiline go @@ -25,6 +26,21 @@ go create table babel_3592_t3(a3 int PRIMARY KEY, b3 int) go + +-- psql +ANALYZE master_dbo.babel_3592_t1 +GO + + +-- psql +ANALYZE master_dbo.babel_3592_t2 +GO + +-- psql +ANALYZE master_dbo.babel_3592_t3 +GO + +-- tsql select set_config('babelfishpg_tsql.explain_costs', 'off', false) go ~~START~~ @@ -78,10 +94,8 @@ text Query Text: EXEC babel_3592_insert_multiline Query Text: insert into babel_3592_t2 select * from babel_3592_t1 where b1 = 1 -> Insert on babel_3592_t2 - -> Bitmap Heap Scan on babel_3592_t1 - Recheck Cond: (b1 = 1) - -> Bitmap Index Scan on index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836 - Index Cond: (b1 = 1) + -> Seq Scan on babel_3592_t1 + Filter: (b1 = 1) Query Text: insert/*+ indexscan(babel_3592_t1 index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836) */ into babel_3592_t2 select * from babel_3592_t1 @@ -97,7 +111,7 @@ Query Text: EXEC babel_3592_insert_multiline ~~START~~ text -Babelfish T-SQL Batch Parsing Time: 0.050 ms +Babelfish T-SQL Batch Parsing Time: 0.077 ms ~~END~~ @@ -114,7 +128,7 @@ Query Text: EXEC babel_3592_insert_singleline ~~START~~ text -Babelfish T-SQL Batch Parsing Time: 0.073 ms +Babelfish T-SQL Batch Parsing Time: 0.083 ms ~~END~~ @@ -166,10 +180,8 @@ text Query Text: EXEC babel_3592_insert_multiline Query Text: insert into babel_3592_t2 select * from babel_3592_t1 where b1 = 1 -> Insert on babel_3592_t2 - -> Bitmap Heap Scan on babel_3592_t1 - Recheck Cond: (b1 = 1) - -> Bitmap Index Scan on index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836 - Index Cond: (b1 = 1) + -> Seq Scan on babel_3592_t1 + Filter: (b1 = 1) Query Text: insert/*+ indexscan(babel_3592_t1 index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836) */ into babel_3592_t2 select * from babel_3592_t1 @@ -185,7 +197,7 @@ Query Text: EXEC babel_3592_insert_multiline ~~START~~ text -Babelfish T-SQL Batch Parsing Time: 0.048 ms +Babelfish T-SQL Batch Parsing Time: 0.065 ms ~~END~~ @@ -202,7 +214,7 @@ Query Text: EXEC babel_3592_updates_singleline ~~START~~ text -Babelfish T-SQL Batch Parsing Time: 0.073 ms +Babelfish T-SQL Batch Parsing Time: 0.094 ms ~~END~~ @@ -255,10 +267,8 @@ text Query Text: EXEC babel_3592_insert_multiline Query Text: insert into babel_3592_t2 select * from babel_3592_t1 where b1 = 1 -> Insert on babel_3592_t2 - -> Bitmap Heap Scan on babel_3592_t1 - Recheck Cond: (b1 = 1) - -> Bitmap Index Scan on index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836 - Index Cond: (b1 = 1) + -> Seq Scan on babel_3592_t1 + Filter: (b1 = 1) Query Text: insert/*+ indexscan(babel_3592_t1 index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836) */ into babel_3592_t2 select * from babel_3592_t1 @@ -274,7 +284,7 @@ Query Text: EXEC babel_3592_insert_multiline ~~START~~ text -Babelfish T-SQL Batch Parsing Time: 0.064 ms +Babelfish T-SQL Batch Parsing Time: 0.075 ms ~~END~~ @@ -291,7 +301,7 @@ Query Text: EXEC babel_3592_delete_singleline ~~START~~ text -Babelfish T-SQL Batch Parsing Time: 0.055 ms +Babelfish T-SQL Batch Parsing Time: 0.095 ms ~~END~~ @@ -362,20 +372,26 @@ Query Text: EXEC babel_3592_proc_mixed_statements Index Cond: (b1 = 1) Query Text: select/*+ nestloop(babel_3592_t1 babel_3592_t2) leading(babel_3592_t1 babel_3592_t2)*/ * from babel_3592_t1 inner join babel_3592_t2 on babel_3592_t1.a1 = babel_3592_t2.a2 -> Gather - Workers Planned: 3 + Workers Planned: 1 + Single Copy: true -> Nested Loop - -> Parallel Seq Scan on babel_3592_t1 - -> Index Scan using babel_3592_t2_pkey on babel_3592_t2 - Index Cond: (a2 = babel_3592_t1.a1) + Join Filter: (babel_3592_t1.a1 = babel_3592_t2.a2) + -> Seq Scan on babel_3592_t1 + -> Seq Scan on babel_3592_t2 Query Text: select/*+ mergejoin(babel_3592_t1 babel_3592_t2) leading(babel_3592_t1 babel_3592_t2)*/ * from babel_3592_t1 inner join babel_3592_t2 on babel_3592_t1.a1 = babel_3592_t2.a2 -> Gather Workers Planned: 1 + Single Copy: true -> Merge Join Merge Cond: (babel_3592_t1.a1 = babel_3592_t2.a2) - -> Parallel Index Scan using babel_3592_t1_pkey on babel_3592_t1 - -> Index Scan using babel_3592_t2_pkey on babel_3592_t2 + -> Sort + Sort Key: babel_3592_t1.a1 + -> Seq Scan on babel_3592_t1 + -> Sort + Sort Key: babel_3592_t2.a2 + -> Seq Scan on babel_3592_t2 Query Text: update/*+ indexscan(babel_3592_t1 index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836) */ babel_3592_t1 set a1 = 1 where b1 = 1 -> Update on babel_3592_t1 -> Index Scan using index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836 on babel_3592_t1 @@ -386,16 +402,12 @@ Query Text: EXEC babel_3592_proc_mixed_statements Merge Cond: (babel_3592_t1.a1 = babel_3592_t2.a2) -> Sort Sort Key: babel_3592_t1.a1 - -> Bitmap Heap Scan on babel_3592_t1 - Recheck Cond: (b1 = 1) - -> Bitmap Index Scan on index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836 - Index Cond: (b1 = 1) + -> Seq Scan on babel_3592_t1 + Filter: (b1 = 1) -> Sort Sort Key: babel_3592_t2.a2 - -> Bitmap Heap Scan on babel_3592_t2 - Recheck Cond: (b2 = 1) - -> Bitmap Index Scan on index_babel_3592_t2_b2babel_359155b730148d8fcf0167f32edb84e3f7d - Index Cond: (b2 = 1) + -> Seq Scan on babel_3592_t2 + Filter: (b2 = 1) Query Text: delete/*+ indexscan(babel_3592_t1 index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836) mergejoin(babel_3592_t1 babel_3592_t2) leading(babel_3592_t1 babel_3592_t2)*/ babel_3592_t1 from babel_3592_t1 left outer join babel_3592_t2 on babel_3592_t1.a1 = babel_3592_t2.a2 where b1 = 1 and b2 = 1 -> Delete on babel_3592_t1 -> Merge Join @@ -406,18 +418,14 @@ Query Text: EXEC babel_3592_proc_mixed_statements Index Cond: (b1 = 1) -> Sort Sort Key: babel_3592_t2.a2 - -> Bitmap Heap Scan on babel_3592_t2 - Recheck Cond: (b2 = 1) - -> Bitmap Index Scan on index_babel_3592_t2_b2babel_359155b730148d8fcf0167f32edb84e3f7d - Index Cond: (b2 = 1) + -> Seq Scan on babel_3592_t2 + Filter: (b2 = 1) Query Text: insert into babel_3592_t2 select * from babel_3592_t1 where b1 = 1 -> Insert on babel_3592_t2 - -> Bitmap Heap Scan on babel_3592_t1 - Recheck Cond: (b1 = 1) - -> Bitmap Index Scan on index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836 - Index Cond: (b1 = 1) + -> Index Scan using index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836 on babel_3592_t1 + Index Cond: (b1 = 1) Query Text: insert/*+ indexscan(babel_3592_t1 index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836) */ into babel_3592_t2 select * from babel_3592_t1 where b1 = 1 -> Insert on babel_3592_t2 -> Index Scan using index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836 on babel_3592_t1 @@ -428,10 +436,8 @@ babel_3592_t2 select * from babel_3592_t1 where b1 = 1 Index Cond: (b1 = 1) Query Text: update babel_3592_t1 set a1 = 1 where b1 = 1 -> Update on babel_3592_t1 - -> Bitmap Heap Scan on babel_3592_t1 - Recheck Cond: (b1 = 1) - -> Bitmap Index Scan on index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836 - Index Cond: (b1 = 1) + -> Index Scan using index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836 on babel_3592_t1 + Index Cond: (b1 = 1) Query Text: select/*+ indexscan(babel_3592_t1 index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836) indexscan(babel_3592_t2 index_babel_3592_t2_b2babel_359155b730148d8fcf0167f32edb84e3f7d) */ * from babel_3592_t1 , babel_3592_t2 where b1 = 1 and b2 = 1 -> Gather Workers Planned: 1 @@ -439,14 +445,13 @@ babel_3592_t2 select * from babel_3592_t1 where b1 = 1 -> Nested Loop -> Index Scan using index_babel_3592_t1_b1babel_35976c64b612d1f74e2768783beca3bf836 on babel_3592_t1 Index Cond: (b1 = 1) - -> Materialize - -> Index Scan using index_babel_3592_t2_b2babel_359155b730148d8fcf0167f32edb84e3f7d on babel_3592_t2 - Index Cond: (b2 = 1) + -> Index Scan using index_babel_3592_t2_b2babel_359155b730148d8fcf0167f32edb84e3f7d on babel_3592_t2 + Index Cond: (b2 = 1) ~~END~~ ~~START~~ text -Babelfish T-SQL Batch Parsing Time: 0.078 ms +Babelfish T-SQL Batch Parsing Time: 0.097 ms ~~END~~ diff --git a/test/JDBC/input/pg_hint_plan/BABEL-3592.sql b/test/JDBC/input/pg_hint_plan/BABEL-3592.mix similarity index 95% rename from test/JDBC/input/pg_hint_plan/BABEL-3592.sql rename to test/JDBC/input/pg_hint_plan/BABEL-3592.mix index 29b74cac1a..bc8f466ec2 100644 --- a/test/JDBC/input/pg_hint_plan/BABEL-3592.sql +++ b/test/JDBC/input/pg_hint_plan/BABEL-3592.mix @@ -1,4 +1,5 @@ -- parallel_query_expected +-- tsql drop procedure if exists babel_3592_insert_multiline go @@ -26,8 +27,23 @@ go create table babel_3592_t3(a3 int PRIMARY KEY, b3 int) go -select set_config('babelfishpg_tsql.explain_costs', 'off', false) -go + +-- psql +ANALYZE master_dbo.babel_3592_t1 +GO + + +-- psql +ANALYZE master_dbo.babel_3592_t2 +GO + +-- psql +ANALYZE master_dbo.babel_3592_t3 +GO + +-- tsql +-- select set_config('babelfishpg_tsql.explain_costs', 'off', false) +-- go select set_config('babelfishpg_tsql.enable_pg_hint', 'on', false); go diff --git a/test/JDBC/jdbc_schedule b/test/JDBC/jdbc_schedule index 6630488bd1..1d1936fe84 100644 --- a/test/JDBC/jdbc_schedule +++ b/test/JDBC/jdbc_schedule @@ -8,7 +8,8 @@ # new line # 6. If you want the framework to not run certain files, use: ignore#!# -all +# all +BABEL-3592 # BABEL-SP_FKEYS test is very slow and causing github action timeout.