From 6f055c0f96c0dc50e564dfb6575ab22272745390 Mon Sep 17 00:00:00 2001 From: naisila Date: Fri, 21 Nov 2025 13:12:43 +0300 Subject: [PATCH 1/3] Bump PG versions to 17.7, 16.11, 15.15 --- .devcontainer/Dockerfile | 8 ++++---- .github/workflows/build_and_test.yml | 12 ++++++------ 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile index 6579c52d9..47caeedcf 100644 --- a/.devcontainer/Dockerfile +++ b/.devcontainer/Dockerfile @@ -73,7 +73,7 @@ USER citus # build postgres versions separately for effective parrallelism and caching of already built versions when changing only certain versions FROM base AS pg15 -RUN MAKEFLAGS="-j $(nproc)" pgenv build 15.14 +RUN MAKEFLAGS="-j $(nproc)" pgenv build 15.15 RUN rm .pgenv/src/*.tar* RUN make -C .pgenv/src/postgresql-*/ clean RUN make -C .pgenv/src/postgresql-*/src/include install @@ -85,7 +85,7 @@ RUN cp -r .pgenv/src .pgenv/pgsql-* .pgenv/config .pgenv-staging/ RUN rm .pgenv-staging/config/default.conf FROM base AS pg16 -RUN MAKEFLAGS="-j $(nproc)" pgenv build 16.10 +RUN MAKEFLAGS="-j $(nproc)" pgenv build 16.11 RUN rm .pgenv/src/*.tar* RUN make -C .pgenv/src/postgresql-*/ clean RUN make -C .pgenv/src/postgresql-*/src/include install @@ -97,7 +97,7 @@ RUN cp -r .pgenv/src .pgenv/pgsql-* .pgenv/config .pgenv-staging/ RUN rm .pgenv-staging/config/default.conf FROM base AS pg17 -RUN MAKEFLAGS="-j $(nproc)" pgenv build 17.6 +RUN MAKEFLAGS="-j $(nproc)" pgenv build 17.7 RUN rm .pgenv/src/*.tar* RUN make -C .pgenv/src/postgresql-*/ clean RUN make -C .pgenv/src/postgresql-*/src/include install @@ -216,7 +216,7 @@ COPY --chown=citus:citus .psqlrc . RUN sudo chown --from=root:root citus:citus -R ~ # sets default pg version -RUN pgenv switch 17.6 +RUN pgenv switch 17.7 # make connecting to the coordinator easy ENV PGPORT=9700 diff --git a/.github/workflows/build_and_test.yml b/.github/workflows/build_and_test.yml index 98e012179..d5bbbf69c 100644 --- a/.github/workflows/build_and_test.yml +++ b/.github/workflows/build_and_test.yml @@ -31,12 +31,12 @@ jobs: pgupgrade_image_name: "ghcr.io/citusdata/pgupgradetester" style_checker_image_name: "ghcr.io/citusdata/stylechecker" style_checker_tools_version: "0.8.18" - sql_snapshot_pg_version: "17.6" - image_suffix: "-va20872f" - pg15_version: '{ "major": "15", "full": "15.14" }' - pg16_version: '{ "major": "16", "full": "16.10" }' - pg17_version: '{ "major": "17", "full": "17.6" }' - upgrade_pg_versions: "15.14-16.10-17.6" + sql_snapshot_pg_version: "17.7" + image_suffix: "-dev-8eac008" + pg15_version: '{ "major": "15", "full": "15.15" }' + pg16_version: '{ "major": "16", "full": "16.11" }' + pg17_version: '{ "major": "17", "full": "17.7" }' + upgrade_pg_versions: "15.15-16.11-17.7" steps: # Since GHA jobs need at least one step we use a noop step here. - name: Set up parameters From 422375459d890ae9f7a7034593f03d2caf5b6cea Mon Sep 17 00:00:00 2001 From: naisila Date: Fri, 21 Nov 2025 13:37:24 +0300 Subject: [PATCH 2/3] Update some error messages in statistics Relevant PG commits: https://github.com/postgres/postgres/commit/ab16418ee https://github.com/postgres/postgres/commit/f225473cb https://github.com/postgres/postgres/commit/f9b41f3e1 --- src/test/regress/expected/pg18_0.out | 4 ++-- src/test/regress/expected/propagate_statistics.out | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/test/regress/expected/pg18_0.out b/src/test/regress/expected/pg18_0.out index 27d3c8d74..9146db605 100644 --- a/src/test/regress/expected/pg18_0.out +++ b/src/test/regress/expected/pg18_0.out @@ -8,12 +8,12 @@ SELECT substring(:'server_version', '\d+')::int >= 18 AS server_version_ge_18 -- behavior is same among PG versions, error message differs -- relevant PG18 commit: 3eea4dc2c7, 38883916e CREATE STATISTICS tst ON a FROM (VALUES (x)) AS foo; -ERROR: only a single relation is allowed in CREATE STATISTICS +ERROR: CREATE STATISTICS only supports relation names in the FROM clause CREATE FUNCTION tftest(int) returns table(a int, b int) as $$ SELECT $1, $1+i FROM generate_series(1,5) g(i); $$ LANGUAGE sql IMMUTABLE STRICT; CREATE STATISTICS alt_stat2 ON a FROM tftest(1); -ERROR: only a single relation is allowed in CREATE STATISTICS +ERROR: CREATE STATISTICS only supports relation names in the FROM clause DROP FUNCTION tftest; \if :server_version_ge_18 \else diff --git a/src/test/regress/expected/propagate_statistics.out b/src/test/regress/expected/propagate_statistics.out index 80e944bc8..02563c22a 100644 --- a/src/test/regress/expected/propagate_statistics.out +++ b/src/test/regress/expected/propagate_statistics.out @@ -16,7 +16,7 @@ SELECT create_distributed_table('test_stats', 'a'); (1 row) CREATE STATISTICS pg_temp.s1 (dependencies) ON a, b FROM test_stats; -ERROR: "statistics object s1" has dependency on unsupported object "schema pg_temp_xxx" +ERROR: "statistics object pg_temp_xxx.s1" has dependency on unsupported object "schema pg_temp_xxx" CREATE STATISTICS s1 (dependencies) ON a, b FROM test_stats; -- test for distributing an already existing statistics CREATE TABLE "test'stats2" ( From 161c68f67770483be7ae699a817c53ec03966a15 Mon Sep 17 00:00:00 2001 From: naisila Date: Thu, 4 Dec 2025 16:26:59 +0300 Subject: [PATCH 3/3] Change image sha --- .github/workflows/build_and_test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build_and_test.yml b/.github/workflows/build_and_test.yml index d5bbbf69c..ecefb7101 100644 --- a/.github/workflows/build_and_test.yml +++ b/.github/workflows/build_and_test.yml @@ -32,7 +32,7 @@ jobs: style_checker_image_name: "ghcr.io/citusdata/stylechecker" style_checker_tools_version: "0.8.18" sql_snapshot_pg_version: "17.7" - image_suffix: "-dev-8eac008" + image_suffix: "-v24bb0ba" pg15_version: '{ "major": "15", "full": "15.15" }' pg16_version: '{ "major": "16", "full": "16.11" }' pg17_version: '{ "major": "17", "full": "17.7" }'