From adf17a8cf140674f8f4d204a7a4785ec9510b470 Mon Sep 17 00:00:00 2001 From: Jelte Fennema Date: Fri, 16 Jul 2021 14:39:04 +0200 Subject: [PATCH] Add upgrade and dowgrade tests for Citus 10.2 (#5120) It seems we forgot to add this when starting 10.2 development. --- src/test/regress/expected/multi_extension.out | 24 +++++++++++++++++++ src/test/regress/sql/multi_extension.sql | 10 ++++++++ 2 files changed, 34 insertions(+) diff --git a/src/test/regress/expected/multi_extension.out b/src/test/regress/expected/multi_extension.out index dec08b820..88fa2c6a7 100644 --- a/src/test/regress/expected/multi_extension.out +++ b/src/test/regress/expected/multi_extension.out @@ -629,6 +629,30 @@ SELECT * FROM multi_extension.print_extension_changes(); | function worker_partitioned_table_size(regclass) bigint (15 rows) +-- Test downgrade to 10.1-1 from 10.2-1 +ALTER EXTENSION citus UPDATE TO '10.2-1'; +ALTER EXTENSION citus UPDATE TO '10.1-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 10.2-1 +ALTER EXTENSION citus UPDATE TO '10.2-1'; +SELECT * FROM multi_extension.print_extension_changes(); + previous_object | current_object +--------------------------------------------------------------------- + function stop_metadata_sync_to_node(text,integer) void | + | function citus_internal.downgrade_columnar_storage(regclass) void + | function citus_internal.upgrade_columnar_storage(regclass) void + | function citus_internal_add_partition_metadata(regclass,"char",text,integer,"char") void + | function citus_internal_add_placement_metadata(bigint,integer,bigint,integer,bigint) void + | function citus_internal_add_shard_metadata(regclass,bigint,"char",text,text) void + | function citus_internal_update_placement_metadata(bigint,integer,integer) void + | function stop_metadata_sync_to_node(text,integer,boolean) void +(8 rows) + DROP TABLE multi_extension.prev_objects, multi_extension.extension_diff; -- show running version SHOW citus.version; diff --git a/src/test/regress/sql/multi_extension.sql b/src/test/regress/sql/multi_extension.sql index 4d55051da..c635031c9 100644 --- a/src/test/regress/sql/multi_extension.sql +++ b/src/test/regress/sql/multi_extension.sql @@ -259,6 +259,16 @@ SELECT * FROM multi_extension.print_extension_changes(); ALTER EXTENSION citus UPDATE TO '10.1-1'; SELECT * FROM multi_extension.print_extension_changes(); +-- Test downgrade to 10.1-1 from 10.2-1 +ALTER EXTENSION citus UPDATE TO '10.2-1'; +ALTER EXTENSION citus UPDATE TO '10.1-1'; +-- Should be empty result since upgrade+downgrade should be a no-op +SELECT * FROM multi_extension.print_extension_changes(); + +-- Snapshot of state at 10.2-1 +ALTER EXTENSION citus UPDATE TO '10.2-1'; +SELECT * FROM multi_extension.print_extension_changes(); + DROP TABLE multi_extension.prev_objects, multi_extension.extension_diff; -- show running version