From 0194657c5d0e0af4e66a3be4132aac476dd7442c Mon Sep 17 00:00:00 2001 From: Onur Tirtir Date: Mon, 10 Apr 2023 12:05:18 +0300 Subject: [PATCH] Bump Citus to 12.0devel (#6840) --- configure | 19 +++++++-------- configure.ac | 2 +- src/backend/distributed/citus.control | 2 +- .../distributed/sql/citus--11.3-1--12.0-1.sql | 3 +++ .../sql/downgrades/citus--12.0-1--11.3-1.sql | 2 ++ src/test/regress/citus_tests/config.py | 2 +- src/test/regress/expected/multi_extension.out | 24 +++++++++++++++---- src/test/regress/sql/multi_extension.sql | 10 ++++++++ 8 files changed, 47 insertions(+), 17 deletions(-) create mode 100644 src/backend/distributed/sql/citus--11.3-1--12.0-1.sql create mode 100644 src/backend/distributed/sql/downgrades/citus--12.0-1--11.3-1.sql diff --git a/configure b/configure index 7a0bd7b9e..65e89799f 100755 --- a/configure +++ b/configure @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for Citus 11.3devel. +# Generated by GNU Autoconf 2.69 for Citus 12.0devel. # # # Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc. @@ -579,8 +579,8 @@ MAKEFLAGS= # Identity of this package. PACKAGE_NAME='Citus' PACKAGE_TARNAME='citus' -PACKAGE_VERSION='11.3devel' -PACKAGE_STRING='Citus 11.3devel' +PACKAGE_VERSION='12.0devel' +PACKAGE_STRING='Citus 12.0devel' PACKAGE_BUGREPORT='' PACKAGE_URL='' @@ -1262,7 +1262,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures Citus 11.3devel to adapt to many kinds of systems. +\`configure' configures Citus 12.0devel to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1324,7 +1324,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of Citus 11.3devel:";; + short | recursive ) echo "Configuration of Citus 12.0devel:";; esac cat <<\_ACEOF @@ -1429,7 +1429,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -Citus configure 11.3devel +Citus configure 12.0devel generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -1912,7 +1912,7 @@ cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by Citus $as_me 11.3devel, which was +It was created by Citus $as_me 12.0devel, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -5393,7 +5393,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by Citus $as_me 11.3devel, which was +This file was extended by Citus $as_me 12.0devel, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -5455,7 +5455,7 @@ _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -Citus config.status 11.3devel +Citus config.status 12.0devel configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" @@ -6160,4 +6160,3 @@ if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5 $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;} fi - diff --git a/configure.ac b/configure.ac index 1f63078dd..f44e9f177 100644 --- a/configure.ac +++ b/configure.ac @@ -5,7 +5,7 @@ # everyone needing autoconf installed, the resulting files are checked # into the SCM. -AC_INIT([Citus], [11.3devel]) +AC_INIT([Citus], [12.0devel]) AC_COPYRIGHT([Copyright (c) Citus Data, Inc.]) # we'll need sed and awk for some of the version commands diff --git a/src/backend/distributed/citus.control b/src/backend/distributed/citus.control index 5367c84a9..292525f27 100644 --- a/src/backend/distributed/citus.control +++ b/src/backend/distributed/citus.control @@ -1,6 +1,6 @@ # Citus extension comment = 'Citus distributed database' -default_version = '11.3-1' +default_version = '12.0-1' module_pathname = '$libdir/citus' relocatable = false schema = pg_catalog diff --git a/src/backend/distributed/sql/citus--11.3-1--12.0-1.sql b/src/backend/distributed/sql/citus--11.3-1--12.0-1.sql new file mode 100644 index 000000000..56bbdfb0d --- /dev/null +++ b/src/backend/distributed/sql/citus--11.3-1--12.0-1.sql @@ -0,0 +1,3 @@ +-- citus--11.3-1--12.0-1 + +-- bump version to 12.0-1 diff --git a/src/backend/distributed/sql/downgrades/citus--12.0-1--11.3-1.sql b/src/backend/distributed/sql/downgrades/citus--12.0-1--11.3-1.sql new file mode 100644 index 000000000..ded1fa571 --- /dev/null +++ b/src/backend/distributed/sql/downgrades/citus--12.0-1--11.3-1.sql @@ -0,0 +1,2 @@ +-- citus--12.0-1--11.3-1 +-- this is an empty downgrade path since citus--11.3-1--12.0-1.sql is empty for now diff --git a/src/test/regress/citus_tests/config.py b/src/test/regress/citus_tests/config.py index 7c9cd599a..f25f0a477 100644 --- a/src/test/regress/citus_tests/config.py +++ b/src/test/regress/citus_tests/config.py @@ -39,7 +39,7 @@ CITUS_ARBITRARY_TEST_DIR = "./tmp_citus_test" MASTER = "master" # This should be updated when citus version changes -MASTER_VERSION = "11.3" +MASTER_VERSION = "12.0" HOME = expanduser("~") diff --git a/src/test/regress/expected/multi_extension.out b/src/test/regress/expected/multi_extension.out index cd9987bd6..0dd52e1ca 100644 --- a/src/test/regress/expected/multi_extension.out +++ b/src/test/regress/expected/multi_extension.out @@ -1330,12 +1330,28 @@ SELECT * FROM multi_extension.print_extension_changes(); | view citus_stat_tenants_local (11 rows) +-- Test downgrade to 11.3-1 from 12.0-1 +ALTER EXTENSION citus UPDATE TO '12.0-1'; +ALTER EXTENSION citus UPDATE TO '11.3-1'; +-- Should be empty result since upgrade+downgrade should be a no-op +SELECT * FROM multi_extension.print_extension_changes(); + previous_object | current_object +--------------------------------------------------------------------- +(0 rows) + +-- Snapshot of state at 12.0-1 +ALTER EXTENSION citus UPDATE TO '12.0-1'; +SELECT * FROM multi_extension.print_extension_changes(); + previous_object | current_object +--------------------------------------------------------------------- +(0 rows) + DROP TABLE multi_extension.prev_objects, multi_extension.extension_diff; -- show running version SHOW citus.version; citus.version --------------------------------------------------------------------- - 11.3devel + 12.0devel (1 row) -- ensure no unexpected objects were created outside pg_catalog @@ -1368,7 +1384,7 @@ DROP EXTENSION citus; DROP EXTENSION citus_columnar; CREATE EXTENSION citus VERSION '8.0-1'; ERROR: specified version incompatible with loaded Citus library -DETAIL: Loaded library requires 11.3, but 8.0-1 was specified. +DETAIL: Loaded library requires 12.0, but 8.0-1 was specified. HINT: If a newer library is present, restart the database and try the command again. -- Test non-distributed queries work even in version mismatch SET citus.enable_version_checks TO 'false'; @@ -1413,7 +1429,7 @@ ORDER BY 1; -- We should not distribute table in version mistmatch SELECT create_distributed_table('version_mismatch_table', 'column1'); ERROR: loaded Citus library version differs from installed extension version -DETAIL: Loaded library requires 11.3, but the installed extension version is 8.1-1. +DETAIL: Loaded library requires 12.0, but the installed extension version is 8.1-1. HINT: Run ALTER EXTENSION citus UPDATE and try again. -- This function will cause fail in next ALTER EXTENSION CREATE OR REPLACE FUNCTION pg_catalog.relation_is_a_known_shard(regclass) @@ -1750,4 +1766,4 @@ DROP TABLE version_mismatch_table; DROP SCHEMA multi_extension; ERROR: cannot drop schema multi_extension because other objects depend on it DETAIL: function multi_extension.print_extension_changes() depends on schema multi_extension -HINT: Use DROP ... CASCADE to drop the dependent objects too. \ No newline at end of file +HINT: Use DROP ... CASCADE to drop the dependent objects too. diff --git a/src/test/regress/sql/multi_extension.sql b/src/test/regress/sql/multi_extension.sql index 6a99dc0b4..cbad97524 100644 --- a/src/test/regress/sql/multi_extension.sql +++ b/src/test/regress/sql/multi_extension.sql @@ -591,6 +591,16 @@ SELECT * FROM multi_extension.print_extension_changes(); ALTER EXTENSION citus UPDATE TO '11.3-1'; SELECT * FROM multi_extension.print_extension_changes(); +-- Test downgrade to 11.3-1 from 12.0-1 +ALTER EXTENSION citus UPDATE TO '12.0-1'; +ALTER EXTENSION citus UPDATE TO '11.3-1'; +-- Should be empty result since upgrade+downgrade should be a no-op +SELECT * FROM multi_extension.print_extension_changes(); + +-- Snapshot of state at 12.0-1 +ALTER EXTENSION citus UPDATE TO '12.0-1'; +SELECT * FROM multi_extension.print_extension_changes(); + DROP TABLE multi_extension.prev_objects, multi_extension.extension_diff; -- show running version