Re: Implement waiting for wal lsn replay: reloaded
От | Álvaro Herrera |
---|---|
Тема | Re: Implement waiting for wal lsn replay: reloaded |
Дата | |
Msg-id | 202510150831.g75i32rzddor@alvherre.pgsql обсуждение исходный текст |
Ответ на | Re: Implement waiting for wal lsn replay: reloaded (Xuneng Zhou <xunengzhou@gmail.com>) |
Ответы |
Re: Implement waiting for wal lsn replay: reloaded
|
Список | pgsql-hackers |
I didn't review the patch other than look at the grammar, but I disagree with using opt_with in it. I think WITH should be a mandatory word, or just not be there at all. The current formulation lets you do one of: 1. WAIT FOR LSN '123/456' WITH (opt = val); 2. WAIT FOR LSN '123/456' (opt = val); 3. WAIT FOR LSN '123/456'; and I don't see why you need two ways to specify an option list. So one option is to remove opt_wait_with_clause and just use opt_utility_option_list, which would remove the WITH keyword from there (ie. only keep 2 and 3 from the above list). But I think that's worse: just look at the REPACK grammar[1], where we have to have additional productions for the optional parenthesized option list. So why not do just +opt_wait_with_clause: + WITH '(' utility_option_list ')' { $$ = $3; } + | /*EMPTY*/ { $$ = NIL; } + ; which keeps options 1 and 3 of the list above. Note: you don't need to worry about WITH_LA, because that's only going to show up when the user writes WITH TIME or WITH ORDINALITY (see parser.c), and that's a syntax error anyway. [1] https://postgr.es/m/202510101352.vvp4p3p2dblu@alvherre.pgsql -- Álvaro Herrera 48°01'N 7°57'E — https://www.EnterpriseDB.com/ "La virtud es el justo medio entre dos defectos" (Aristóteles)
В списке pgsql-hackers по дате отправления: