Re: Fwd: Re: A new look at old NFS readdir() problems?

David Steele <david@pgbackrest.org>

From: David Steele <david@pgbackrest.org>
To: Thomas Munro <thomas.munro@gmail.com>
Cc: Greg Sabino Mullane <htamfids@gmail.com>, Robert Haas <robertmhaas@gmail.com>, Tom Lane <tgl@sss.pgh.pa.us>, Larry Rosenman <ler@lerctr.org>, Pgsql hackers <pgsql-hackers@lists.postgresql.org>
Date: 2025-01-06T16:41:20Z
Lists: pgsql-hackers
On 1/4/25 11:07, Thomas Munro wrote:
> On Sat, Jan 4, 2025 at 5:48 AM David Steele <david@pgbackrest.org> wrote:
>> We had one issue reported [1] involving Alpine Linux and CIFS and
> 
> Not directly relevant for pgbackrest probably, but I noticed that
> Alpine comes up in a few reports of failing rm -r on CIFS.  I think it
> might be because BSD and GNU rm use fts to buffer pathnames in user
> space (narrow window), while Alpine uses busybox rm which has a
> classic readdir()/unlink() loop:

Yeah, this doesn't affect pgBackRest because we have our own rmtree that 
uses snapshots (for the last few years, at least).

> As for CIFS, there are lots of reports of this sort of thing from
> Linux CIFS clients.

There may be users running Postgres on CIFS but my guess is that is rare 
-- at least I have never seen anyone doing it.

I'm more concerned about the report we saw on SUSE/NFS [1]. If that 
report is accurate it indicates this may not be something we can just 
document and move on from -- unless we are willing to entirely drop 
support for NFS.

Regards,
-David

[1] https://github.com/pgbackrest/pgbackrest/issues/1423