Re: [BUG] Logical replica crash if there was an error in a function. - Mailing list pgsql-hackers

From Anton A. Melnikov
Subject Re: [BUG] Logical replica crash if there was an error in a function.
Date
Msg-id 8f809b5b-380b-d4da-ca4f-39646719ecc7@inbox.ru
Whole thread Raw
In response to Re: [BUG] Logical replica crash if there was an error in a function.  (vignesh C <vignesh21@gmail.com>)
Responses Re: [BUG] Logical replica crash if there was an error in a function.  ("Anton A. Melnikov" <aamelnikov@inbox.ru>)
List pgsql-hackers
Thanks for your remarks.

On 07.01.2023 15:27, vignesh C wrote:
> 
> Few suggestions:
> 1) There is a warning:
> +# This would crash on the subscriber if not fixed
> +$node_publisher->safe_psql('postgres', "INSERT INTO tab1 VALUES (3, 4)");
> +
> +my $result = $node_subscriber->wait_for_log(
> +       "ERROR:  relation \"error_name\" does not exist at character"
> +);
> 
>   "my" variable $result masks earlier declaration in same scope at
> t/100_bugs.pl line 400.
> 
> You can change:
> my $result = $node_subscriber->safe_psql('postgres', "SELECT * FROM sch1.t1");
> to
> $result = $node_subscriber->safe_psql('postgres', "SELECT * FROM sch1.t1");

The reason is that the patch fell behind the master.
Fixed in v4 together with rebasing on current master.

> 2) Now that the crash is fixed, you could change it to a better message:
> +# This would crash on the subscriber if not fixed
> +$node_publisher->safe_psql('postgres', "INSERT INTO tab1 VALUES (3, 4)");
> +
> +my $result = $node_subscriber->wait_for_log(
> +       "ERROR:  relation \"error_name\" does not exist at character"
> +);
> 

Tried to make this comment more clear.

Best wishes for the new year!


-- 
Anton A. Melnikov
Postgres Professional: http://www.postgrespro.com
The Russian Postgres Company
Attachment

pgsql-hackers by date:

Previous
From: "Karl O. Pinc"
Date:
Subject: Re: drop postmaster symlink
Next
From: "houzj.fnst@fujitsu.com"
Date:
Subject: RE: Perform streaming logical transactions by background workers and parallel apply