Re: pgsql: Remove the restriction that the relmap must be 512 bytes.

From: Thomas Munro <thomas(dot)munro(at)gmail(dot)com>
To: Michael Paquier <michael(at)paquier(dot)xyz>
Cc: Robert Haas <rhaas(at)postgresql(dot)org>, pgsql-committers <pgsql-committers(at)lists(dot)postgresql(dot)org>
Subject: Re: pgsql: Remove the restriction that the relmap must be 512 bytes.
Date: 2022-07-27 06:21:07
Message-ID: CA+hUKGJBTGr8A6aW3ND-nEQPL1f3_RjSrfEDryki_bdGaJX2Vg@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers pgsql-hackers

On Wed, Jul 27, 2022 at 6:06 PM Thomas Munro <thomas(dot)munro(at)gmail(dot)com> wrote:
> On Wed, Jul 27, 2022 at 5:01 PM Thomas Munro <thomas(dot)munro(at)gmail(dot)com> wrote:
> > Someone else still has the old file open, so we can't rename the new
> > one to its name? On Windows that should have gone through pgrename()
> > in dirmod.c, which would retry 100 times with a 100ms sleep between.
> > Since every backend reads that file (I added an elog() and saw it 2289
> > times during make check), I guess you can run out of luck.
> >
> > /me thinks
>
> Maybe we just have to rearrange the locking slightly? Something like
> the attached.

Erm, let me try that again, this time with the CloseTransientFile()
also under the lock, so that we never have a file handle without a
lock.

Attachment Content-Type Size
v2-0001-Fix-read_relmap_file-concurrency-on-Windows.patch text/x-patch 2.6 KB

In response to

Responses

Browse pgsql-committers by date

  From Date Subject
Next Message Michael Paquier 2022-07-27 10:25:47 Re: pgsql: Remove the restriction that the relmap must be 512 bytes.
Previous Message Thomas Munro 2022-07-27 06:06:12 Re: pgsql: Remove the restriction that the relmap must be 512 bytes.

Browse pgsql-hackers by date

  From Date Subject
Next Message Richard Guo 2022-07-27 06:37:40 Re: [Refactor]Avoid to handle FORCE_NOT_NULL/FORCE_NULL options when COPY TO
Previous Message Alvaro Herrera 2022-07-27 06:07:16 Re: standby recovery fails (tablespace related) (tentative patch and discussion)