On Mon, Jul 21, 2025 at 2:55 PM Amit Kapila <amit.kapila16@gmail.com> wrote:
>
> On Mon, Jul 21, 2025 at 2:36 PM vignesh C <vignesh21@gmail.com> wrote:
> >
> > On Mon, 21 Jul 2025 at 11:15, Dilip Kumar <dilipbalaut@gmail.com> wrote:
> > >
> >
> > > 3. Some of the syntaxes works for sequence which doesn't make sense to
> > > me, as listed below, I think there are more
> > >
> > > postgres[154731]=# CREATE PUBLICATION insert_only FOR ALL SEQUENCES
> > > WITH (publish = 'insert');
> > > CREATE PUBLICATION
> > >
> > > postgres[154731]=# CREATE PUBLICATION pub FOR ALL SEQUENCES WITH (
> > > PUBLISH_VIA_PARTITION_ROOT );
> > > CREATE PUBLICATION
> >
> > There is a documentation for this at sql-createpublication.html:
> > WITH ( publication_parameter [= value] [, ... ] )
> > This clause specifies optional parameters for a publication when
> > publishing tables. This clause is not applicable for sequences.
> >
> > I felt it was enough, should we do anything more here?
> >
>
> It would be better if we can give ERROR for options that are not
> specific to sequences.
>
Alter-PUB also should give an error then. Currently it works
postgres=# alter publication pub1 set (publish='insert,update');
ALTER PUBLICATION
pub1 here is an all-sequence publication.
Also, we need to decide behaviour for a publication with 'all tables,
all sequences' having such WITH options for both CREATE and ALTER-PUB.
The options are valid for tables but not for sequences. In such a
case, giving an error might not be correct. For this particular case,
we can give a NOTICE saying options not applicable to sequences.
Thoughts?
thanks
Shveta