diff options
author | Amit Kapila <akapila@postgresql.org> | 2024-11-07 08:58:49 +0530 |
---|---|---|
committer | Amit Kapila <akapila@postgresql.org> | 2024-11-07 08:58:49 +0530 |
commit | 7054186c4ebe24e63254651e2ae9b36efae90d4e (patch) | |
tree | 56f43479b5f7c127128b91697da9db84242bc67e /src/bin/psql/tab-complete.in.c | |
parent | 70291a3c66eca599fd9f59f7f6051432b2020f4b (diff) | |
download | postgresql-7054186c4ebe24e63254651e2ae9b36efae90d4e.tar.gz postgresql-7054186c4ebe24e63254651e2ae9b36efae90d4e.zip |
Replicate generated columns when 'publish_generated_columns' is set.
This patch builds on the work done in commit 745217a051 by enabling the
replication of generated columns alongside regular column changes through
a new publication parameter: publish_generated_columns.
Example usage:
CREATE PUBLICATION pub1 FOR TABLE tab_gencol WITH (publish_generated_columns = true);
The column list takes precedence. If the generated columns are specified
in the column list, they will be replicated even if
'publish_generated_columns' is set to false. Conversely, if generated
columns are not included in the column list (assuming the user specifies a
column list), they will not be replicated even if
'publish_generated_columns' is true.
Author: Vignesh C, Shubham Khanna
Reviewed-by: Peter Smith, Amit Kapila, Hayato Kuroda, Shlok Kyal, Ajin Cherian, Hou Zhijie, Masahiko Sawada
Discussion: https://postgr.es/m/B80D17B2-2C8E-4C7D-87F2-E5B4BE3C069E@gmail.com
Diffstat (limited to 'src/bin/psql/tab-complete.in.c')
-rw-r--r-- | src/bin/psql/tab-complete.in.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/bin/psql/tab-complete.in.c b/src/bin/psql/tab-complete.in.c index 1be0056af73..fad2277991d 100644 --- a/src/bin/psql/tab-complete.in.c +++ b/src/bin/psql/tab-complete.in.c @@ -2261,7 +2261,7 @@ match_previous_words(int pattern_id, "CURRENT_SCHEMA"); /* ALTER PUBLICATION <name> SET ( */ else if (Matches("ALTER", "PUBLICATION", MatchAny, MatchAnyN, "SET", "(")) - COMPLETE_WITH("publish", "publish_via_partition_root"); + COMPLETE_WITH("publish", "publish_generated_columns", "publish_via_partition_root"); /* ALTER SUBSCRIPTION <name> */ else if (Matches("ALTER", "SUBSCRIPTION", MatchAny)) COMPLETE_WITH("CONNECTION", "ENABLE", "DISABLE", "OWNER TO", @@ -3513,7 +3513,7 @@ match_previous_words(int pattern_id, COMPLETE_WITH("WITH ("); /* Complete "CREATE PUBLICATION <name> [...] WITH" */ else if (Matches("CREATE", "PUBLICATION", MatchAnyN, "WITH", "(")) - COMPLETE_WITH("publish", "publish_via_partition_root"); + COMPLETE_WITH("publish", "publish_generated_columns", "publish_via_partition_root"); /* CREATE RULE */ /* Complete "CREATE [ OR REPLACE ] RULE <sth>" with "AS ON" */ |