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