diff --git a/configure b/configure index 2e7e85298..0073e2857 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 10.0devel. +# Generated by GNU Autoconf 2.69 for Citus 10.1devel. # # # 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='10.0devel' -PACKAGE_STRING='Citus 10.0devel' +PACKAGE_VERSION='10.1devel' +PACKAGE_STRING='Citus 10.1devel' PACKAGE_BUGREPORT='' PACKAGE_URL='' @@ -1258,7 +1258,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 10.0devel to adapt to many kinds of systems. +\`configure' configures Citus 10.1devel to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1320,7 +1320,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of Citus 10.0devel:";; + short | recursive ) echo "Configuration of Citus 10.1devel:";; esac cat <<\_ACEOF @@ -1422,7 +1422,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -Citus configure 10.0devel +Citus configure 10.1devel generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -1905,7 +1905,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 10.0devel, which was +It was created by Citus $as_me 10.1devel, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -5276,7 +5276,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 10.0devel, which was +This file was extended by Citus $as_me 10.1devel, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -5338,7 +5338,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 10.0devel +Citus config.status 10.1devel configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" diff --git a/configure.in b/configure.in index bb108b246..44920a9e3 100644 --- a/configure.in +++ b/configure.in @@ -5,7 +5,7 @@ # everyone needing autoconf installed, the resulting files are checked # into the SCM. -AC_INIT([Citus], [10.0devel]) +AC_INIT([Citus], [10.1devel]) 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 296cef23c..a004b145c 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 = '10.0-1' +default_version = '10.1-1' module_pathname = '$libdir/citus' relocatable = false schema = pg_catalog diff --git a/src/backend/distributed/sql/citus--10.0-1--10.1-1.sql b/src/backend/distributed/sql/citus--10.0-1--10.1-1.sql new file mode 100644 index 000000000..56bf57db9 --- /dev/null +++ b/src/backend/distributed/sql/citus--10.0-1--10.1-1.sql @@ -0,0 +1,4 @@ +-- citus--10.0-1--10.1-1 + +-- bump version to 10.1-1 + diff --git a/src/backend/distributed/sql/downgrades/citus--10.1-1--10.0-1.sql b/src/backend/distributed/sql/downgrades/citus--10.1-1--10.0-1.sql new file mode 100644 index 000000000..a7acf77fd --- /dev/null +++ b/src/backend/distributed/sql/downgrades/citus--10.1-1--10.0-1.sql @@ -0,0 +1,3 @@ +-- citus--10.1-1--10.0-1 +-- this is an empty downgrade path since citus--10.0-1--10.1-1.sql is empty for now + diff --git a/src/test/regress/expected/multi_extension.out b/src/test/regress/expected/multi_extension.out index c80df9222..bbfd313be 100644 --- a/src/test/regress/expected/multi_extension.out +++ b/src/test/regress/expected/multi_extension.out @@ -515,12 +515,28 @@ SELECT * FROM print_extension_changes(); | view time_partitions (67 rows) +-- Test downgrade to 10.0-1 from 10.1-1 +ALTER EXTENSION citus UPDATE TO '10.1-1'; +ALTER EXTENSION citus UPDATE TO '10.0-1'; +-- Should be empty result since upgrade+downgrade should be a no-op +SELECT * FROM print_extension_changes(); + previous_object | current_object +--------------------------------------------------------------------- +(0 rows) + +-- Snapshot of state at 10.1-1 +ALTER EXTENSION citus UPDATE TO '10.1-1'; +SELECT * FROM print_extension_changes(); + previous_object | current_object +--------------------------------------------------------------------- +(0 rows) + DROP TABLE prev_objects, extension_diff; -- show running version SHOW citus.version; citus.version --------------------------------------------------------------------- - 10.0devel + 10.1devel (1 row) -- ensure no unexpected objects were created outside pg_catalog @@ -543,7 +559,7 @@ RESET citus.enable_version_checks; DROP EXTENSION citus; CREATE EXTENSION citus VERSION '8.0-1'; ERROR: specified version incompatible with loaded Citus library -DETAIL: Loaded library requires 10.0, but 8.0-1 was specified. +DETAIL: Loaded library requires 10.1, 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'; @@ -586,7 +602,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 10.0, but the installed extension version is 8.1-1. +DETAIL: Loaded library requires 10.1, 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) diff --git a/src/test/regress/expected/multi_extension_0.out b/src/test/regress/expected/multi_extension_0.out index 84f3eb93b..8982708b9 100644 --- a/src/test/regress/expected/multi_extension_0.out +++ b/src/test/regress/expected/multi_extension_0.out @@ -511,12 +511,28 @@ SELECT * FROM print_extension_changes(); | view time_partitions (63 rows) +-- Test downgrade to 10.0-1 from 10.1-1 +ALTER EXTENSION citus UPDATE TO '10.1-1'; +ALTER EXTENSION citus UPDATE TO '10.0-1'; +-- Should be empty result since upgrade+downgrade should be a no-op +SELECT * FROM print_extension_changes(); + previous_object | current_object +--------------------------------------------------------------------- +(0 rows) + +-- Snapshot of state at 10.1-1 +ALTER EXTENSION citus UPDATE TO '10.1-1'; +SELECT * FROM print_extension_changes(); + previous_object | current_object +--------------------------------------------------------------------- +(0 rows) + DROP TABLE prev_objects, extension_diff; -- show running version SHOW citus.version; citus.version --------------------------------------------------------------------- - 10.0devel + 10.1devel (1 row) -- ensure no unexpected objects were created outside pg_catalog @@ -539,7 +555,7 @@ RESET citus.enable_version_checks; DROP EXTENSION citus; CREATE EXTENSION citus VERSION '8.0-1'; ERROR: specified version incompatible with loaded Citus library -DETAIL: Loaded library requires 10.0, but 8.0-1 was specified. +DETAIL: Loaded library requires 10.1, 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'; @@ -582,7 +598,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 10.0, but the installed extension version is 8.1-1. +DETAIL: Loaded library requires 10.1, 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) diff --git a/src/test/regress/sql/multi_extension.sql b/src/test/regress/sql/multi_extension.sql index 5fe423f5f..17856dd26 100644 --- a/src/test/regress/sql/multi_extension.sql +++ b/src/test/regress/sql/multi_extension.sql @@ -198,6 +198,16 @@ SELECT * FROM print_extension_changes(); ALTER EXTENSION citus UPDATE TO '10.0-1'; SELECT * FROM print_extension_changes(); +-- Test downgrade to 10.0-1 from 10.1-1 +ALTER EXTENSION citus UPDATE TO '10.1-1'; +ALTER EXTENSION citus UPDATE TO '10.0-1'; +-- Should be empty result since upgrade+downgrade should be a no-op +SELECT * FROM print_extension_changes(); + +-- Snapshot of state at 10.1-1 +ALTER EXTENSION citus UPDATE TO '10.1-1'; +SELECT * FROM print_extension_changes(); + DROP TABLE prev_objects, extension_diff; -- show running version diff --git a/src/test/regress/upgrade/config.py b/src/test/regress/upgrade/config.py index 6aa51ac04..8069ef5cb 100644 --- a/src/test/regress/upgrade/config.py +++ b/src/test/regress/upgrade/config.py @@ -11,7 +11,7 @@ MIXED_AFTER_CITUS_UPGRADE_SCHEDULE = './mixed_after_citus_upgrade_schedule' MASTER = 'master' # This should be updated when citus version changes -MASTER_VERSION = '10.0' +MASTER_VERSION = '10.1' HOME = expanduser("~")