Re: BUG #17928: Standby fails to decode WAL on termination of primary
| От | Thomas Munro |
|---|---|
| Тема | Re: BUG #17928: Standby fails to decode WAL on termination of primary |
| Дата | |
| Msg-id | CA+hUKGK=o+v3w=XsWu+vGUZNsQK=-moFO8G61GsFjLk47GZJ8A@mail.gmail.com обсуждение исходный текст |
| Ответ на | Re: BUG #17928: Standby fails to decode WAL on termination of primary (Alexander Lakhin <exclusion@gmail.com>) |
| Список | pgsql-bugs |
On Sat, Sep 16, 2023 at 6:00 PM Alexander Lakhin <exclusion@gmail.com> wrote:
> It looks like the construction "@{^CAPTURE}" used in scan_server_header()
> is not supported by Perl 5.24, which is included in Debian stretch:
> https://perldoc.perl.org/variables/@%7B%5ECAPTURE%7D
> I replaced it with
> @match = ($1);
> and that worked for me.
Thanks for catching that! I see that %{^CAPTURE} was added to Perl
5.25.7, but we document Perl 5.14 or later as the requirement
currently, and for REL_12_STABLE it's Perl 5.8.3. That would
certainly have turned a few build farm fossils red.
Your replacement only returns the first captured group. I don't know
Perl, but I think we can just assign the whole array to @match
directly, to maintain the semantics that Michael wanted, like so:
- if ($line =~ /^$regexp/)
+ if (@match = $line =~ /^$regexp/)
{
- # Found match, so store all the results.
- @match = @{^CAPTURE};
last;
}
Better Perl welcome.
Looking into your observation about wal_log_hints...
В списке pgsql-bugs по дате отправления: