Hi, here are some patch v9-0001 comments.

I saw Kuroda-san has already posted comments for this patch so there
may be some duplication here.

======
GENERAL

1.
The later patches 0002 etc are checking to support only STORED
gencols. But, doesn't that restriction belong in this patch 0001 so
VIRTUAL columns are not decoded etc in the first place... (??)

~~~

2.
The "Generated Columns" docs mentioned in my previous review comment
[2] should be modified by this 0001 patch.

~~~

3.
I think the "Message Format" page mentioned in my previous review
comment [3] should be modified by this 0001 patch.

======
Commit message

4.
The patch name is still broken as previously mentioned [1, #1]

======
doc/src/sgml/protocol.sgml

5.
Should this docs be referring to STORED generated columns, instead of
just generated columns?

======
doc/src/sgml/ref/create_subscription.sgml

6.
Should this be docs referring to STORED generated columns, instead of
just generated columns?

======
src/bin/pg_dump/pg_dump.c

getSubscriptions:
NITPICK - tabs
NITPICK - patch removed a blank line it should not be touching
NITPICK = patch altered indents it should not be touching
NITPICK - a missing blank line that was previously present

7.
+ else
+ appendPQExpBufferStr(query,
+ " false AS subincludegencols,\n");

There is an unwanted comma here.

~

dumpSubscription
NITPICK - patch altered indents it should not be touching

======
src/bin/pg_dump/pg_dump.h

NITPICK - unnecessary blank line

======
src/bin/psql/describe.c

describeSubscriptions
NITPICK - bad indentation

8.
In my previous review [1, #4b] I suggested this new column should be
in a different order (e.g. adjacent to the other ones ahead of
'Conninfo'), but this is not yet addressed.

======
src/test/subscription/t/011_generated.pl

NITPICK - missing space in comment
NITPICK - misleading "because" wording in the comment

======

99.
See also my attached nitpicks diff, for cosmetic issues. Please apply
whatever you agree with.

======
[1] My v8-0001 review -
https://www.postgresql.org/message-id/CAHut%2BPujrRQ63ju8P41tBkdjkQb4X9uEdLK_Wkauxum1MVUdfA%40mail.gmail.com
[2] 
https://www.postgresql.org/message-id/CAHut%2BPvsRWq9t2tEErt5ZWZCVpNFVZjfZ_owqfdjOhh4yXb_3Q%40mail.gmail.com
[3] 
https://www.postgresql.org/message-id/CAHut%2BPsHsT3V1wQ5uoH9ynbmWn4ZQqOe34X%2Bg37LSi7sgE_i2g%40mail.gmail.com

Kind Regards,
Peter Smith.
Fujitsu Australia.
diff --git a/src/bin/pg_dump/pg_dump.c b/src/bin/pg_dump/pg_dump.c
index 1fb19f5..9f2cac9 100644
--- a/src/bin/pg_dump/pg_dump.c
+++ b/src/bin/pg_dump/pg_dump.c
@@ -4739,7 +4739,7 @@ getSubscriptions(Archive *fout)
        int                     i_suboriginremotelsn;
        int                     i_subenabled;
        int                     i_subfailover;
-       int                     i_subincludegencols;
+       int                     i_subincludegencols;
        int                     i,
                                ntups;
 
@@ -4770,6 +4770,7 @@ getSubscriptions(Archive *fout)
                                                 " s.subowner,\n"
                                                 " s.subconninfo, 
s.subslotname, s.subsynccommit,\n"
                                                 " s.subpublications,\n");
+
        if (fout->remoteVersion >= 140000)
                appendPQExpBufferStr(query, " s.subbinary,\n");
        else
@@ -4804,7 +4805,7 @@ getSubscriptions(Archive *fout)
 
        if (dopt->binary_upgrade && fout->remoteVersion >= 170000)
                appendPQExpBufferStr(query, " o.remote_lsn AS 
suboriginremotelsn,\n"
-                                                       " s.subenabled,\n");
+                                                        " s.subenabled,\n");
        else
                appendPQExpBufferStr(query, " NULL AS suboriginremotelsn,\n"
                                                         " false AS 
subenabled,\n");
@@ -4815,12 +4816,14 @@ getSubscriptions(Archive *fout)
        else
                appendPQExpBuffer(query,
                                                " false AS subfailover,\n");
+
        if (fout->remoteVersion >= 170000)
                appendPQExpBufferStr(query,
                                                 " s.subincludegencols\n");
        else
                appendPQExpBufferStr(query,
                                                " false AS 
subincludegencols,\n");
+
        appendPQExpBufferStr(query,
                                                 "FROM pg_subscription s\n");
 
diff --git a/src/bin/pg_dump/pg_dump.h b/src/bin/pg_dump/pg_dump.h
index a2c35fe..8c07933 100644
--- a/src/bin/pg_dump/pg_dump.h
+++ b/src/bin/pg_dump/pg_dump.h
@@ -672,7 +672,6 @@ typedef struct _SubscriptionInfo
        char       *suboriginremotelsn;
        char       *subfailover;
        char       *subincludegencols;
-
 } SubscriptionInfo;
 
 /*
diff --git a/src/bin/psql/describe.c b/src/bin/psql/describe.c
index 491fcb9..00f3131 100644
--- a/src/bin/psql/describe.c
+++ b/src/bin/psql/describe.c
@@ -6604,7 +6604,7 @@ describeSubscriptions(const char *pattern, bool verbose)
                                                  gettext_noop("Synchronous 
commit"),
                                                  gettext_noop("Conninfo"));
 
-                               /* include_generated_columns is only supported 
in v18 and higher */
+               /* include_generated_columns is only supported in v18 and 
higher */
                if (pset.sversion >= 170000)
                        appendPQExpBuffer(&buf,
                                                                ", 
subincludegencols AS \"%s\"\n",
diff --git a/src/test/subscription/t/011_generated.pl 
b/src/test/subscription/t/011_generated.pl
index e612970..6c8d6ce 100644
--- a/src/test/subscription/t/011_generated.pl
+++ b/src/test/subscription/t/011_generated.pl
@@ -106,7 +106,7 @@ $node_publisher->safe_psql('postgres', "INSERT INTO tab2 
VALUES (4), (5)");
 
 $node_publisher->wait_for_catchup('sub2');
 
-# the column was NOT replicated because the result value of 'b'is the 
subscriber-side computed value
+# the column was NOT replicated (the result value of 'b' is the 
subscriber-side computed value)
 $result = $node_subscriber->safe_psql('postgres', "SELECT a, b FROM tab2 ORDER 
BY a");
 is( $result, qq(4|8
 5|10), 'confirm generated columns ARE replicated when the subscriber-side 
column is not generated');

Reply via email to