Bump PG15 CI images to rc2 (#6407)

When bumping to RC2, we needed to update one test. The following is the
commit message for the change:

Remove references to optimization PG15 reverted

PG15 introduced an optimization on GROUP BY keys that is now reverted on
RC2.

Relevant PG Commit:
Revert "Optimize order of GROUP BY keys".
443df6e2db932a7cd6d85ddfb67e11a43345130d

Depends on: https://github.com/citusdata/the-process/pull/94
pull/6416/head
Hanefi Onaldi 2022-10-11 14:30:59 +03:00 committed by GitHub
commit 4f8d6f6558
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
9 changed files with 18 additions and 1720 deletions

View File

@ -6,7 +6,7 @@ orbs:
parameters:
image_suffix:
type: string
default: '-vf83b06c'
default: '-vcc4855a'
pg13_version:
type: string
default: '13.8'
@ -15,10 +15,10 @@ parameters:
default: '14.5'
pg15_version:
type: string
default: '15rc1'
default: '15rc2'
upgrade_pg_versions:
type: string
default: '13.8-14.5-15rc1'
default: '13.8-14.5-15rc2'
style_checker_tools_version:
type: string
default: '0.8.18'

View File

@ -463,29 +463,6 @@ DEBUG: Creating router plan
(5 rows)
\set VERBOSITY default
-- enable_group_by_reordering is a new GUC introduced in PG15
-- it does some optimization of the order of group by keys which results
-- in a different explain output plan between PG13/14 and PG15
-- Hence we set that GUC to off.
SHOW server_version \gset
SELECT substring(:'server_version', '\d+')::int >= 15 AS server_version_ge_15
\gset
\if :server_version_ge_15
SET enable_group_by_reordering TO off;
\endif
SELECT DISTINCT 1 FROM run_command_on_workers($$ALTER SYSTEM SET enable_group_by_reordering TO off;$$);
?column?
---------------------------------------------------------------------
1
(1 row)
SELECT run_command_on_workers($$SELECT pg_reload_conf()$$);
run_command_on_workers
---------------------------------------------------------------------
(localhost,57637,t,t)
(localhost,57638,t,t)
(2 rows)
EXPLAIN (COSTS OFF) WITH cte_1 AS NOT MATERIALIZED (SELECT * FROM test_table)
SELECT
count(*)
@ -524,22 +501,6 @@ DEBUG: join prunable for intervals [1073741824,2147483647] and [0,1073741823]
-> Seq Scan on test_table_1960000 test_table_1
(12 rows)
\if :server_version_ge_15
RESET enable_group_by_reordering;
\endif
SELECT DISTINCT 1 FROM run_command_on_workers($$ALTER SYSTEM RESET enable_group_by_reordering;$$);
?column?
---------------------------------------------------------------------
1
(1 row)
SELECT run_command_on_workers($$SELECT pg_reload_conf()$$);
run_command_on_workers
---------------------------------------------------------------------
(localhost,57637,t,t)
(localhost,57638,t,t)
(2 rows)
-- ctes with volatile functions are not
-- inlined
WITH cte_1 AS (SELECT *, random() FROM test_table)

View File

@ -463,29 +463,6 @@ DEBUG: Creating router plan
(5 rows)
\set VERBOSITY default
-- enable_group_by_reordering is a new GUC introduced in PG15
-- it does some optimization of the order of group by keys which results
-- in a different explain output plan between PG13/14 and PG15
-- Hence we set that GUC to off.
SHOW server_version \gset
SELECT substring(:'server_version', '\d+')::int >= 15 AS server_version_ge_15
\gset
\if :server_version_ge_15
SET enable_group_by_reordering TO off;
\endif
SELECT DISTINCT 1 FROM run_command_on_workers($$ALTER SYSTEM SET enable_group_by_reordering TO off;$$);
?column?
---------------------------------------------------------------------
1
(1 row)
SELECT run_command_on_workers($$SELECT pg_reload_conf()$$);
run_command_on_workers
---------------------------------------------------------------------
(localhost,57637,t,t)
(localhost,57638,t,t)
(2 rows)
EXPLAIN (COSTS OFF) WITH cte_1 AS NOT MATERIALIZED (SELECT * FROM test_table)
SELECT
count(*)
@ -524,22 +501,6 @@ DEBUG: join prunable for intervals [1073741824,2147483647] and [0,1073741823]
-> Seq Scan on test_table_1960000 test_table_1
(12 rows)
\if :server_version_ge_15
RESET enable_group_by_reordering;
\endif
SELECT DISTINCT 1 FROM run_command_on_workers($$ALTER SYSTEM RESET enable_group_by_reordering;$$);
?column?
---------------------------------------------------------------------
1
(1 row)
SELECT run_command_on_workers($$SELECT pg_reload_conf()$$);
run_command_on_workers
---------------------------------------------------------------------
(localhost,57637,t,t)
(localhost,57638,t,t)
(2 rows)
-- ctes with volatile functions are not
-- inlined
WITH cte_1 AS (SELECT *, random() FROM test_table)

View File

@ -636,21 +636,6 @@ Aggregate
-> Seq Scan on events_1400285 events
Filter: ((event_type)::text = ANY ('{click,submit,pay}'::text[]))
-- Union and left join subquery pushdown
-- enable_group_by_reordering is a new GUC introduced in PG15
-- it does some optimization of the order of group by keys which results
-- in a different explain output plan between PG13/14 and PG15
-- Hence we set that GUC to off.
SHOW server_version \gset
SELECT substring(:'server_version', '\d+')::int >= 15 AS server_version_ge_15
\gset
\if :server_version_ge_15
SET enable_group_by_reordering TO off;
\endif
SELECT DISTINCT 1 FROM run_command_on_workers($$ALTER SYSTEM SET enable_group_by_reordering TO off;$$);
1
SELECT run_command_on_workers($$SELECT pg_reload_conf()$$);
(localhost,57637,t,t)
(localhost,57638,t,t)
EXPLAIN (COSTS OFF)
SELECT
avg(array_length(events, 1)) AS event_average,
@ -873,14 +858,6 @@ Sort
Sort Key: events_2.composite_id
-> Seq Scan on events_1400285 events_2
Filter: ((composite_id >= '(1,-9223372036854775808)'::user_composite_type) AND (composite_id <= '(1,9223372036854775807)'::user_composite_type) AND ((event_type)::text = 'pay'::text))
\if :server_version_ge_15
RESET enable_group_by_reordering;
\endif
SELECT DISTINCT 1 FROM run_command_on_workers($$ALTER SYSTEM RESET enable_group_by_reordering;$$);
1
SELECT run_command_on_workers($$SELECT pg_reload_conf()$$);
(localhost,57637,t,t)
(localhost,57638,t,t)
-- Lateral join subquery pushdown
-- set subquery_pushdown due to limit in the query
SET citus.subquery_pushdown to ON;

View File

@ -3,13 +3,6 @@
--
-- Tests select distinct, and select distinct on features.
--
SHOW server_version \gset
SELECT substring(:'server_version', '\d+')::int >= 15 AS server_version_ge_15;
server_version_ge_15
---------------------------------------------------------------------
t
(1 row)
ANALYZE lineitem_hash_part;
-- function calls are supported
SELECT DISTINCT l_orderkey, now() FROM lineitem_hash_part LIMIT 0;
@ -446,10 +439,9 @@ EXPLAIN (COSTS FALSE)
QUERY PLAN
---------------------------------------------------------------------
Limit
-> Unique
-> Sort
Sort Key: remote_scan.l_suppkey, ((pg_catalog.sum(remote_scan.avg) / pg_catalog.sum(remote_scan.avg_1)))
-> HashAggregate
Group Key: remote_scan.l_suppkey, (pg_catalog.sum(remote_scan.avg) / pg_catalog.sum(remote_scan.avg_1))
-> HashAggregate
Group Key: remote_scan.l_suppkey, remote_scan.worker_column_4
-> Custom Scan (Citus Adaptive)
@ -460,7 +452,7 @@ EXPLAIN (COSTS FALSE)
-> HashAggregate
Group Key: l_suppkey, l_linenumber
-> Seq Scan on lineitem_hash_part_360041 lineitem_hash_part
(15 rows)
(14 rows)
-- check the plan if the hash aggreate is disabled. This explain errors out due
-- to a bug right now, expectation must be corrected after fixing it.
@ -598,10 +590,9 @@ EXPLAIN (COSTS FALSE)
QUERY PLAN
---------------------------------------------------------------------
Limit
-> Unique
-> Sort
Sort Key: ((sum(remote_scan.avg) / (pg_catalog.sum(remote_scan.avg_1))::double precision))
-> HashAggregate
Group Key: (sum(remote_scan.avg) / (pg_catalog.sum(remote_scan.avg_1))::double precision)
-> HashAggregate
Group Key: remote_scan.worker_column_3, remote_scan.worker_column_4
-> Custom Scan (Citus Adaptive)
@ -612,7 +603,7 @@ EXPLAIN (COSTS FALSE)
-> HashAggregate
Group Key: l_suppkey, l_linenumber
-> Seq Scan on lineitem_hash_part_360041 lineitem_hash_part
(15 rows)
(14 rows)
-- check the plan if the hash aggreate is disabled. This explain errors out due
-- to a bug right now, expectation must be corrected after fixing it.
@ -674,10 +665,9 @@ EXPLAIN (COSTS FALSE)
QUERY PLAN
---------------------------------------------------------------------
Limit
-> Unique
-> Sort
Sort Key: (((pg_catalog.sum(remote_scan.dis))::bigint + COALESCE((pg_catalog.sum(remote_scan.dis_1))::bigint, '0'::bigint)))
-> HashAggregate
Group Key: ((pg_catalog.sum(remote_scan.dis))::bigint + COALESCE((pg_catalog.sum(remote_scan.dis_1))::bigint, '0'::bigint))
-> HashAggregate
Group Key: remote_scan.worker_column_3, remote_scan.worker_column_4
-> Custom Scan (Citus Adaptive)
@ -688,7 +678,7 @@ EXPLAIN (COSTS FALSE)
-> HashAggregate
Group Key: l_suppkey, l_linenumber
-> Seq Scan on lineitem_hash_part_360041 lineitem_hash_part
(15 rows)
(14 rows)
-- check the plan if the hash aggreate is disabled. This explain errors out due
-- to a bug right now, expectation must be corrected after fixing it.

File diff suppressed because it is too large Load Diff

View File

@ -246,19 +246,6 @@ $Q$);
\set VERBOSITY default
-- enable_group_by_reordering is a new GUC introduced in PG15
-- it does some optimization of the order of group by keys which results
-- in a different explain output plan between PG13/14 and PG15
-- Hence we set that GUC to off.
SHOW server_version \gset
SELECT substring(:'server_version', '\d+')::int >= 15 AS server_version_ge_15
\gset
\if :server_version_ge_15
SET enable_group_by_reordering TO off;
\endif
SELECT DISTINCT 1 FROM run_command_on_workers($$ALTER SYSTEM SET enable_group_by_reordering TO off;$$);
SELECT run_command_on_workers($$SELECT pg_reload_conf()$$);
EXPLAIN (COSTS OFF) WITH cte_1 AS NOT MATERIALIZED (SELECT * FROM test_table)
SELECT
count(*)
@ -268,13 +255,6 @@ FROM
cte_1 as second_entry
USING (key);
\if :server_version_ge_15
RESET enable_group_by_reordering;
\endif
SELECT DISTINCT 1 FROM run_command_on_workers($$ALTER SYSTEM RESET enable_group_by_reordering;$$);
SELECT run_command_on_workers($$SELECT pg_reload_conf()$$);
-- ctes with volatile functions are not
-- inlined
WITH cte_1 AS (SELECT *, random() FROM test_table)

View File

@ -254,20 +254,6 @@ FROM
user_id) AS subquery;
-- Union and left join subquery pushdown
-- enable_group_by_reordering is a new GUC introduced in PG15
-- it does some optimization of the order of group by keys which results
-- in a different explain output plan between PG13/14 and PG15
-- Hence we set that GUC to off.
SHOW server_version \gset
SELECT substring(:'server_version', '\d+')::int >= 15 AS server_version_ge_15
\gset
\if :server_version_ge_15
SET enable_group_by_reordering TO off;
\endif
SELECT DISTINCT 1 FROM run_command_on_workers($$ALTER SYSTEM SET enable_group_by_reordering TO off;$$);
SELECT run_command_on_workers($$SELECT pg_reload_conf()$$);
EXPLAIN (COSTS OFF)
SELECT
avg(array_length(events, 1)) AS event_average,
@ -403,12 +389,6 @@ GROUP BY
ORDER BY
count_pay;
\if :server_version_ge_15
RESET enable_group_by_reordering;
\endif
SELECT DISTINCT 1 FROM run_command_on_workers($$ALTER SYSTEM RESET enable_group_by_reordering;$$);
SELECT run_command_on_workers($$SELECT pg_reload_conf()$$);
-- Lateral join subquery pushdown
-- set subquery_pushdown due to limit in the query
SET citus.subquery_pushdown to ON;

View File

@ -3,9 +3,6 @@
--
-- Tests select distinct, and select distinct on features.
--
SHOW server_version \gset
SELECT substring(:'server_version', '\d+')::int >= 15 AS server_version_ge_15;
ANALYZE lineitem_hash_part;
-- function calls are supported