pg.ddx.io  pgsql-committers@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Andres Freund <andres@anarazel.de>
To: Alvaro Herrera <alvherre@alvh.no-ip.org>
Cc: Christoph Berg <myon@debian.org>
Cc: Thomas Munro <thomas.munro@gmail.com>
Cc: pgsql-hackers@lists.postgresql.org
Subject: Re: could not extend file "base/5/3501" with FileFallocate(): Interrupted system call
Date: Fri, 9 Jun 2023 21:35:38 -0700
Message-ID: <20230610043538.2z46xyoaohj4fjnf@awork3.anarazel.de> (raw)
In-Reply-To: <20230606195300.wackhn5qc7nic5l5@alvherre.pgsql>
References: <20230425001623.im5uquriqlk4ayy6@awork3.anarazel.de>
	<20230606195300.wackhn5qc7nic5l5@alvherre.pgsql>

Hi,

On 2023-06-06 21:53:00 +0200, Alvaro Herrera wrote:
> On 2023-Apr-24, Andres Freund wrote:
> 
> > A prototype of that approach is attached. I pushed the retry handling into the
> > pg_* routines where applicable.  I guess we could add pg_* routines for
> > FileFallocate(), FilePrewarm() etc as well, but I didn't do that here.
> > 
> > Christoph, could you verify this fixes your issue?
> 
> So, is anyone making progress on this?  I don't see anything in the
> thread.

Thanks for bringing it up again, I had lost track. I now added an open items
entry.

My gut feeling is that we should go with something quite minimal at this
stage.


> On adding the missing pg_* wrappers: I think if we don't (and we leave
> the retry loops at the File* layer), then the risk is that some external
> code would add calls to the underlying File* routines trusting them to
> do the retrying, which would then become broken when we move the retry
> loops to the pg_* wrappers when we add them.  That doesn't seem terribly
> serious to me.

I'm not too worried about that either.


Unless somebody strongly advocates a different path, I plan to push something
along the lines of the prototype I had posted. After reading over it a bunch
more times, some of the code is a bit finnicky.


I wish we had some hack that made syscalls EINTR at a random intervals, just
to make it realistic to test these paths...

Greetings,

Andres Freund





view thread (19+ messages)  latest in thread

Message-ID: <20230610043538.2z46xyoaohj4fjnf@awork3.anarazel.de>
Permalink:  ../20230610043538.2z46xyoaohj4fjnf@awork3.anarazel.de/
Also on:    postgresql.org/message-id/20230610043538.2z46xyoaohj4fjnf@awork3.anarazel.de

 · 

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-committers@postgresql.org
  Cc: andres@anarazel.de, alvherre@alvh.no-ip.org, myon@debian.org, thomas.munro@gmail.com, pgsql-hackers@lists.postgresql.org
  Subject: Re: could not extend file "base/5/3501" with FileFallocate(): Interrupted system call
  In-Reply-To: <20230610043538.2z46xyoaohj4fjnf@awork3.anarazel.de>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox