Re: CREATE PUBLICATION with 'publish_generated_columns' parameter specified but unassigned

Peter Smith <smithpb2250@gmail.com>

From: Peter Smith <smithpb2250@gmail.com>
To: "David G. Johnston" <david.g.johnston@gmail.com>
Cc: PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2025-08-04T08:44:45Z
Lists: pgsql-hackers
On Mon, Aug 4, 2025 at 4:37 PM David G. Johnston
<david.g.johnston@gmail.com> wrote:
>
> On Sunday, August 3, 2025, Peter Smith <smithpb2250@gmail.com> wrote:
>>
>> Recently, I learned it is possible to say:
>>
>> CREATE PUBLICATION pub ... WITH (publish_generated_columns);
>>
>> This is equivalent to:
>> CREATE PUBLICATION pub ... WITH (publish_generated_columns = stored);
>>
>>
>> What is the verdict for this syntax -- ok or not?
>
>
> Not.
>
> An enum should not allow for an omitted value.  The documented policy of only booleans being allowed an optional value is what is expected.  I’d say this is a new-in-18 bug that should be fixed in the code.  The documentation is correct - absence of the option means “none”, presence requires an explicit value and not its own missing-value default.
>

Thanks. That is the same as my understanding.

I will post a patch to do this tomorrow.

======
Kind Regards,
Peter Smith.
Fujitsu Australia



Commits

  1. Throw ERROR when publish_generated_columns is specified without a value.

  2. Message style improvements