On 01/02/2025 2:50 pm, Bruce Momjian wrote:
On Thu, Jan  2, 2025 at 03:48:53PM -0500, Tom Lane wrote:
Larry Rosenman <l...@lerctr.org> writes:
> @Tom Lane: This is what Rick Macklem (NFS dev on FreeBSD) has to say on
> my issue.

Thanks for reaching out to him.  So if I'm reading this correctly,
there's little point in filing a FreeBSD bug because it'll be
dismissed as unfixable.

This leaves us in rather a nasty position.  Sure, we could rewrite
rmtree() as Thomas suggested upthread, but I'm still of the opinion
that that's smearing lipstick on a pig.  rmtree() is the least of
our worries: it doesn't need to expect that anybody else will be
modifying the target directory, plus it can easily restart its scan
without complicated bookkeeping.  I doubt we can make such an
assumption for all our uses of readdir(), or that it's okay to
miss or double-process files in every one of them.

I'm still of the opinion that the best thing to do is disclaim
safety of storing a database on NFS.

It would be nice to have some details on the docs about why NFS can
cause problems so we have something to point to when people ask.

What about doing what Rick suggests?
do {
      dir = opendir("X");
       dp = readdir(dir);
       if (dp != NULL)
            unlink(dp->d_name);
        close(dir);
} while (dp != NULL);
?
--
Larry Rosenman                     http://www.lerctr.org/~ler
Phone: +1 214-642-9640                 E-Mail: l...@lerctr.org
US Mail: 13425 Ranch Road 620 N, Apt 718, Austin, TX 78717-1010


Reply via email to