| From: | Fujii Masao <masao(dot)fujii(at)oss(dot)nttdata(dot)com> |
|---|---|
| To: | Michael Paquier <michael(at)paquier(dot)xyz> |
| Cc: | pgsql-hackers(at)postgresql(dot)org |
| Subject: | Re: ERROR: invalid spinlock number: 0 |
| Date: | 2021-02-11 14:30:13 |
| Message-ID: | 79698f73-7dd7-d9e3-5322-4032b4428653@oss.nttdata.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
On 2021/02/11 21:55, Michael Paquier wrote:
> Hi Fujii-san,
>
> On Tue, Feb 09, 2021 at 11:17:04PM +0900, Fujii Masao wrote:
>> ISTM that the commit 2c8dd05d6c caused this issue. The commit changed
>> pg_stat_get_wal_receiver() so that it reads "writtenUpto" by using
>> pg_atomic_read_u64(). But since "writtenUpto" is initialized only when
>> walreceiver starts up, reading "writtenUpto" before the startup of
>> walreceiver can cause the error.
>
> Indeed, that's a problem. We should at least move that out of the
> spin lock area.
Yes, so what about the attached patch?
We didn't notice this issue long time because no regression test checks
pg_stat_wal_receiver. So I included such test in the patch.
Regards,
--
Fujii Masao
Advanced Computing Technology Center
Research and Development Headquarters
NTT DATA CORPORATION
| Attachment | Content-Type | Size |
|---|---|---|
| bugfix_pg_stat_wal_receiver.patch | text/plain | 2.6 KB |
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Josef Šimánek | 2021-02-11 14:38:42 | Re: Improvements and additions to COPY progress reporting |
| Previous Message | Robert Haas | 2021-02-11 14:28:10 | Re: Extensibility of the PostgreSQL wire protocol |