PG17 regress sanity: fix error unrecognized alter database option tablespace seen in database vanilla test - #7764
Conversation
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## release-13.0 #7764 +/- ##
===============================================
Coverage ? 89.59%
===============================================
Files ? 274
Lines ? 59584
Branches ? 7436
===============================================
Hits ? 53387
Misses ? 4052
Partials ? 2145 |
all Postgres DDL commands to compelte without being propagated by Citus.
1d338b6 to
1cc62a2
Compare
…lespace seen in database vanilla test (#7764) Disable DDL propagation for the vanilla test suite. This enables the vanilla `database ` test to pass, where previously it was correctly returning `ERROR: unrecognized ALTER DATABASE option: tablespace` because release-13.0 does not propagate this ALTER DATABASE variant. We (Citus team) discussed cherry picking [#7253](#7253) from main to release-13.0 because it does propagate ALTER DATABASE tablespace option (as well as a couple of others) but decided fixing the regress test was not the proper context for that. The fix disables `citus.enable_metadata_sync` when running vanilla, we discussed disabling `citus.enable_create_database_propagation` but this is not in release-13.0.
…lespace seen in database vanilla test (#7764) Disable DDL propagation for the vanilla test suite. This enables the vanilla `database ` test to pass, where previously it was correctly returning `ERROR: unrecognized ALTER DATABASE option: tablespace` because release-13.0 does not propagate this ALTER DATABASE variant. We (Citus team) discussed cherry picking [#7253](#7253) from main to release-13.0 because it does propagate ALTER DATABASE tablespace option (as well as a couple of others) but decided fixing the regress test was not the proper context for that. The fix disables `citus.enable_metadata_sync` when running vanilla, we discussed disabling `citus.enable_create_database_propagation` but this is not in release-13.0.
|
Unfortunately we cannot disable the metadata sync during the vanilla tests. The point of the vanilla test is to see that Postgres vanilla commands behave as they are expected after running "CREATE EXTENSION citus" in the database. So, we cannot disable things that would be enabled by default in the extension. Especially we cannot disable metadata sync which is one of the main mechanisms of Citus. If you check the metadata_sync guc, it has the following definition: DefineCustomBoolVariable(
"citus.enable_metadata_sync",
gettext_noop("Enables object and metadata syncing."),
NULL,
&EnableMetadataSync,
true, // this means it is enabled by default
PGC_USERSET,
GUC_NO_SHOW_ALL | GUC_NOT_IN_SAMPLE,
NULL, NULL, NULL);When I approved this PR, I thought that we are disabling DefineCustomBoolVariable(
"citus.enable_create_database_propagation",
gettext_noop("Enables propagating CREATE DATABASE "
"and DROP DATABASE statements to workers."),
NULL,
&EnableCreateDatabasePropagation,
false, // this means it is disabled by default
PGC_USERSET,
GUC_STANDARD,
NULL, NULL, NULL);So, we need to revert this commit. |
Sure, opened #7775 for reverting. The release-13.0 branch does not have CREATE | DROP database propagation (#7249), so does not have the GUC |
…lespace seen in database vanilla test (#7764) Disable DDL propagation for the vanilla test suite. This enables the vanilla `database ` test to pass, where previously it was correctly returning `ERROR: unrecognized ALTER DATABASE option: tablespace` because release-13.0 does not propagate this ALTER DATABASE variant. We (Citus team) discussed cherry picking [#7253](#7253) from main to release-13.0 because it does propagate ALTER DATABASE tablespace option (as well as a couple of others) but decided fixing the regress test was not the proper context for that. The fix disables `citus.enable_metadata_sync` when running vanilla, we discussed disabling `citus.enable_create_database_propagation` but this is not in release-13.0.
…lespace seen in database vanilla test (#7764) Disable DDL propagation for the vanilla test suite. This enables the vanilla `database ` test to pass, where previously it was correctly returning `ERROR: unrecognized ALTER DATABASE option: tablespace` because release-13.0 does not propagate this ALTER DATABASE variant. We (Citus team) discussed cherry picking [#7253](#7253) from main to release-13.0 because it does propagate ALTER DATABASE tablespace option (as well as a couple of others) but decided fixing the regress test was not the proper context for that. The fix disables `citus.enable_metadata_sync` when running vanilla, we discussed disabling `citus.enable_create_database_propagation` but this is not in release-13.0.
…lespace seen in database vanilla test (#7764) Disable DDL propagation for the vanilla test suite. This enables the vanilla `database ` test to pass, where previously it was correctly returning `ERROR: unrecognized ALTER DATABASE option: tablespace` because release-13.0 does not propagate this ALTER DATABASE variant. We (Citus team) discussed cherry picking [#7253](#7253) from main to release-13.0 because it does propagate ALTER DATABASE tablespace option (as well as a couple of others) but decided fixing the regress test was not the proper context for that. The fix disables `citus.enable_metadata_sync` when running vanilla, we discussed disabling `citus.enable_create_database_propagation` but this is not in release-13.0.
Disable DDL propagation for the vanilla test suite. This enables the vanilla
databasetest to pass, where previously it was correctly returningERROR: unrecognized ALTER DATABASE option: tablespacebecause release-13.0 does not propagate this ALTER DATABASE variant.We (Citus team) discussed cherry picking #7253 from main to release-13.0 because it does propagate ALTER DATABASE tablespace option (as well as a couple of others) but decided fixing the regress test was not the proper context for that. The fix disables
citus.enable_metadata_syncwhen running vanilla, we discussed disablingcitus.enable_create_database_propagationbut this is not in release-13.0.