提交 afe7e610 编写于 作者: B Bhuvnesh Chaudhary

Bump ORCA to 3.42.0 and update test cases

上级 e36d53e8
......@@ -40,10 +40,10 @@ AC_RUN_IFELSE([AC_LANG_PROGRAM([[
#include <string.h>
]],
[
return strncmp("3.41.", GPORCA_VERSION_STRING, 5);
return strncmp("3.42.", GPORCA_VERSION_STRING, 5);
])],
[AC_MSG_RESULT([[ok]])],
[AC_MSG_ERROR([Your ORCA version is expected to be 3.41.XXX])]
[AC_MSG_ERROR([Your ORCA version is expected to be 3.42.XXX])]
)
AC_LANG_POP([C++])
])# PGAC_CHECK_ORCA_VERSION
......
......@@ -13995,7 +13995,7 @@ int
main ()
{
return strncmp("3.41.", GPORCA_VERSION_STRING, 5);
return strncmp("3.42.", GPORCA_VERSION_STRING, 5);
;
return 0;
......@@ -14005,7 +14005,7 @@ if ac_fn_cxx_try_run "$LINENO"; then :
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: ok" >&5
$as_echo "ok" >&6; }
else
as_fn_error $? "Your ORCA version is expected to be 3.41.XXX" "$LINENO" 5
as_fn_error $? "Your ORCA version is expected to be 3.42.XXX" "$LINENO" 5
fi
rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
......
[requires]
orca/v3.41.0@gpdb/stable
orca/v3.42.0@gpdb/stable
[imports]
include, * -> build/include
......
......@@ -88,9 +88,9 @@ sync_tools: opt_write_test
ifeq "$(findstring aix,$(BLD_ARCH))" ""
ifeq "$(findstring sles,$(BLD_ARCH))" ""
LD_LIBRARY_PATH='' wget --no-check-certificate -q -O - https://github.com/greenplum-db/gporca/archive/v3.41.0.tar.gz | tar zxf - -C $(BLD_TOP)/ext/$(BLD_ARCH)
LD_LIBRARY_PATH='' wget --no-check-certificate -q -O - https://github.com/greenplum-db/gporca/archive/v3.42.0.tar.gz | tar zxf - -C $(BLD_TOP)/ext/$(BLD_ARCH)
else
LD_LIBRARY_PATH='' wget --no-check-certificate -q -O - https://github.com/greenplum-db/gporca/releases/download/v3.41.0/bin_orca_centos5_release.tar.gz | tar zxf - -C $(BLD_TOP)/ext/$(BLD_ARCH)
LD_LIBRARY_PATH='' wget --no-check-certificate -q -O - https://github.com/greenplum-db/gporca/releases/download/v3.42.0/bin_orca_centos5_release.tar.gz | tar zxf - -C $(BLD_TOP)/ext/$(BLD_ARCH)
endif
endif
......
......@@ -400,25 +400,25 @@ ANALYZE test_join_card1;
ANALYZE test_join_card2;
ANALYZE test_join_card3;
EXPLAIN SELECT * FROM test_join_card1 t1, test_join_card2 t2, test_join_card3 t3 WHERE t1.b = t2.b and t3.b = t2.b;
QUERY PLAN
---------------------------------------------------------------------------------------------------------------
Gather Motion 3:1 (slice4; segments: 3) (cost=0.00..1297.58 rows=5999 width=22)
-> Hash Join (cost=0.00..1297.09 rows=2000 width=22)
Hash Cond: ((test_join_card2.b)::text = (test_join_card3.b)::text)
-> Hash Join (cost=0.00..864.43 rows=2000 width=14)
Hash Cond: ((test_join_card1.b)::text = (test_join_card2.b)::text)
QUERY PLAN
------------------------------------------------------------------------------------------------------------------------------------------
Gather Motion 3:1 (slice4; segments: 3) (cost=0.00..1298.38 rows=5999 width=22)
-> Hash Join (cost=0.00..1297.89 rows=2000 width=22)
Hash Cond: (((test_join_card1.b)::text = (test_join_card2.b)::text) AND ((test_join_card3.b)::text = (test_join_card2.b)::text))
-> Hash Join (cost=0.00..865.03 rows=3334 width=18)
Hash Cond: ((test_join_card1.b)::text = (test_join_card3.b)::text)
-> Redistribute Motion 3:3 (slice1; segments: 3) (cost=0.00..431.48 rows=6667 width=10)
Hash Key: (test_join_card1.b)::text
Hash Key: test_join_card1.b
-> Seq Scan on test_join_card1 (cost=0.00..431.15 rows=6667 width=10)
-> Hash (cost=431.08..431.08 rows=2000 width=4)
-> Redistribute Motion 3:3 (slice2; segments: 3) (cost=0.00..431.08 rows=2000 width=4)
Hash Key: test_join_card2.b
-> Seq Scan on test_join_card2 (cost=0.00..431.04 rows=2000 width=4)
-> Hash (cost=431.20..431.20 rows=3334 width=8)
-> Redistribute Motion 3:3 (slice3; segments: 3) (cost=0.00..431.20 rows=3334 width=8)
Hash Key: (test_join_card3.b)::text
-> Seq Scan on test_join_card3 (cost=0.00..431.07 rows=3334 width=8)
Optimizer: Pivotal Optimizer (GPORCA) version 3.19.0
-> Hash (cost=431.20..431.20 rows=3334 width=8)
-> Redistribute Motion 3:3 (slice2; segments: 3) (cost=0.00..431.20 rows=3334 width=8)
Hash Key: test_join_card3.b
-> Seq Scan on test_join_card3 (cost=0.00..431.07 rows=3334 width=8)
-> Hash (cost=431.08..431.08 rows=2000 width=4)
-> Redistribute Motion 3:3 (slice3; segments: 3) (cost=0.00..431.08 rows=2000 width=4)
Hash Key: test_join_card2.b
-> Seq Scan on test_join_card2 (cost=0.00..431.04 rows=2000 width=4)
Optimizer: Pivotal Optimizer (GPORCA) version 3.41.0
(17 rows)
-- start_ignore
......
......@@ -257,15 +257,15 @@ create type colors as enum ('red', 'green', 'blue');
create table legacy_enum(color colors) distributed by(color cdbhash_enum_ops);
insert into legacy_enum values ('red'), ('green'), ('blue');
explain (costs off) select * from legacy_enum a inner join legacy_enum b on a.color = b.color;
QUERY PLAN
--------------------------------------------------------------
QUERY PLAN
------------------------------------------------------------------------------------
Gather Motion 3:1 (slice1; segments: 3)
-> Hash Join
Hash Cond: (legacy_enum.color = legacy_enum_1.color)
Hash Cond: ((legacy_enum.color)::anyenum = (legacy_enum_1.color)::anyenum)
-> Seq Scan on legacy_enum
-> Hash
-> Seq Scan on legacy_enum legacy_enum_1
Optimizer: Pivotal Optimizer (GPORCA) version 3.9.0
Optimizer: Pivotal Optimizer (GPORCA) version 3.41.0
(7 rows)
select * from legacy_enum a inner join legacy_enum b on a.color = b.color;
......
......@@ -123,32 +123,29 @@ EXPLAIN (COSTS OFF) UPDATE keo1 SET user_vie_act_cntr_marg_cum = 234.682 FROM
(SELECT min (keo4.keo_para_budget_date) FROM keo4)))
) t1
WHERE t1.user_vie_project_code_pk = keo1.user_vie_project_code_pk;
QUERY PLAN
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
QUERY PLAN
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Update
-> Result
-> Explicit Redistribute Motion 3:3 (slice8; segments: 3)
-> Explicit Redistribute Motion 3:3 (slice7; segments: 3)
-> Split
-> Result
-> Hash Join
Hash Cond: ((keo1.user_vie_project_code_pk)::text = (keo1_1.user_vie_project_code_pk)::text)
-> Redistribute Motion 3:3 (slice1; segments: 3)
Hash Key: keo1.user_vie_project_code_pk
Hash Cond: ((keo1_1.user_vie_project_code_pk)::text = (keo2.projects_pk)::text)
-> Hash Join
Hash Cond: ((keo1.user_vie_project_code_pk)::text = (keo1_1.user_vie_project_code_pk)::text)
-> Seq Scan on keo1
-> Hash
-> Hash Join
Hash Cond: ((keo1_1.user_vie_project_code_pk)::text = (keo2.projects_pk)::text)
-> Redistribute Motion 1:3 (slice6; segments: 1)
Hash Key: keo1_1.user_vie_project_code_pk
-> Hash
-> Broadcast Motion 1:3 (slice5; segments: 1)
-> Hash Join
Hash Cond: ((keo1_1.user_vie_fiscal_year_period_sk)::text = (max((keo3.sky_per)::text)))
-> Gather Motion 3:1 (slice2; segments: 3)
-> Gather Motion 3:1 (slice1; segments: 3)
-> Seq Scan on keo1 keo1_1
-> Hash
-> Aggregate
-> Hash Join
Hash Cond: ((keo3.bky_per)::text = (keo4.keo_para_required_period)::text)
-> Gather Motion 3:1 (slice3; segments: 3)
-> Gather Motion 3:1 (slice2; segments: 3)
-> Seq Scan on keo3
-> Hash
-> Assert
......@@ -156,17 +153,16 @@ WHERE t1.user_vie_project_code_pk = keo1.user_vie_project_code_pk;
-> WindowAgg
-> Hash Join
Hash Cond: ((keo4.keo_para_budget_date)::text = (min((min((keo4_1.keo_para_budget_date)::text)))))
-> Gather Motion 3:1 (slice4; segments: 3)
-> Gather Motion 3:1 (slice3; segments: 3)
-> Seq Scan on keo4
-> Hash
-> Aggregate
-> Gather Motion 3:1 (slice5; segments: 3)
-> Gather Motion 3:1 (slice4; segments: 3)
-> Aggregate
-> Seq Scan on keo4 keo4_1
-> Hash
-> Redistribute Motion 3:3 (slice7; segments: 3)
Hash Key: keo2.projects_pk
-> Seq Scan on keo2
-> Hash
-> Broadcast Motion 3:3 (slice6; segments: 3)
-> Seq Scan on keo2
Optimizer: Pivotal Optimizer (GPORCA) version 3.41.0
(43 rows)
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册