At Wed, 8 Apr 2020 02:52:55 +0300, Alexander Korotkov 
<a.korot...@postgrespro.ru> wrote in 
> On Wed, Apr 8, 2020 at 2:14 AM Kartyshov Ivan
> <i.kartys...@postgrespro.ru> wrote:
> > On 2020-04-08 00:27, Tom Lane wrote:
> > > Alexander Korotkov <akorot...@postgresql.org> writes:
> > »   WAIT FOR LSN lsn [ TIMEOUT timeout ]
> > >
> > > This seems like a really carelessly chosen syntax —- *three* new
> > > keywords, when you probably didn't need any.  Are you not aware that
> > > there is distributed overhead in the grammar for every keyword?
> > > Plus, each new keyword carries the risk of breaking existing
> > > applications, since it no longer works as an alias-not-preceded-by-AS.
> > >
> >
> > To avoid creating new keywords, we could change syntax in the following
> > way:
> > WAIT FOR => DEPENDS ON
> 
> Looks OK for me.
> 
> > LSN => EVENT
> 
> I think it's too generic.  Not every event is lsn.  TBH, lsn is not
> event at all :)
> 
> I wonder is we can still use word lsn, but don't use keyword for that.
> Can we take arbitrary non-quoted literal there and check it later?
> 
> > TIMEOUT => WITH INTERVAL
> 
> I'm not yet sure about this.  Probably there are better options.

How about something like the follows.

BEGIN AFTER ColId Sconst
BEGIN FOLOWING ColId Sconst

UNTIL <absolute time>;
LIMIT BY <interval>;
WITHIN Iconst;

regards.

-- 
Kyotaro Horiguchi
NTT Open Source Software Center

Reply via email to