Re: CREATE/ALTER PUBLICATION improvements for syntax synopsis - Mailing list pgsql-hackers
| From | Chao Li |
|---|---|
| Subject | Re: CREATE/ALTER PUBLICATION improvements for syntax synopsis |
| Date | |
| Msg-id | 8EF969A2-DDF4-496A-8508-57A87D92E301@gmail.com Whole thread Raw |
| In response to | Re: CREATE/ALTER PUBLICATION improvements for syntax synopsis (Peter Smith <smithpb2250@gmail.com>) |
| Responses |
Re: CREATE/ALTER PUBLICATION improvements for syntax synopsis
Re: CREATE/ALTER PUBLICATION improvements for syntax synopsis |
| List | pgsql-hackers |
> On Nov 20, 2025, at 06:18, Peter Smith <smithpb2250@gmail.com> wrote:
>
> Hi Fuji-San.
>
> Thanks for your suggestions! I've attached a new patch v6 to incorporate them.
>
> On Thu, Nov 20, 2025 at 4:50 AM Fujii Masao <masao.fujii@gmail.com> wrote:
>>
>> On Tue, Nov 18, 2025 at 5:27 PM Chao Li <li.evan.chao@gmail.com> wrote:
>>> Thanks for addressing the comments. V5 looks good to me.
>>
>> Thanks both for the patch and review!
>>
>> -<phrase>where <replaceable
>> class="parameter">all_publication_object</replaceable> is one
>> of:</phrase>
>> + <phrase>where <replaceable
>> class="parameter">table_spec</replaceable> is:</phrase>
>> +
>> + [ ONLY ] <replaceable
>> class="parameter">table_name</replaceable> [ * ] [ ( <replaceable
>> class="parameter">column_name</replaceable> [, ... ] ) ] [ WHERE (
>> <replaceable class="parameter">expression</replaceable> ) ]
>> +
>> +<phrase>where <replaceable
>> class="parameter">publication_all_object</replaceable> is one
>> of:</phrase>
>>
>> In other documentation files (e.g., merge.sgml, analyze.sgml), the definitions
>> of each element are chained using "and". For example, in merge.sgml:
>>
>> where data_source is:
>> ...
>> and when_clause is:
>> ...
>> and merge_insert is:
>> ...
>>
>> I think create_publication.sgml and alter_publication.sgml should follow
>> the same style for consistency. For example, in create_publication.sgml
>> we would have:
>>
>> where publication_object
>> ...
>> and publication_all_object
>> ...
>> and table_spec
>> ...
>
> +1. I never noticed this before.
>
>>
>> It seems better to put these sections in the same order that the elements
>> appear in the syntax. So I placed publication_all_object before table_spec
>> in the above example.
>>
>>
>> -<phrase>where <replaceable
>> class="parameter">all_publication_object</replaceable> is one
>> of:</phrase>
>> + <phrase>where <replaceable
>> class="parameter">table_spec</replaceable> is:</phrase>
>>
>
> OK. Done in v6.
>
>> Regarding terminology: analyze.sgml uses table_and_columns for
>> a similar syntax, and personally I think table_and_columns is clearer than
>> table_spec.
>>
>
> Thanks for the other example usages.
>
> +1 for naming it as 'table_and_columns' to be the same as everywhere else.
>
+1 as well.
V6 looks better. However, there is a typo:
In alter_publication.sgml:
```
- TABLE [ ONLY ] <replaceable class="parameter">table_name</replaceable> [ * ] [, ... ]
+ TABLE <replaceable class="parameter">table</replaceable> [, ... ]
TABLES IN SCHEMA { <replaceable class="parameter">schema_name</replaceable> | CURRENT_SCHEMA } [, ... ]
```
<replaceable class="parameter">table</replaceable> should be <replaceable
class="parameter">table_and_columns</replaceable>.
Best regards,
--
Chao Li (Evan)
HighGo Software Co., Ltd.
https://www.highgo.com/
pgsql-hackers by date: