Re: fix pg_mkdir_p to tolerate concurrent directory creation

From: Álvaro Herrera <alvherre(at)kurilemu(dot)de>
To: Andrew Dunstan <andrew(at)dunslane(dot)net>
Cc: PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>
Subject: Re: fix pg_mkdir_p to tolerate concurrent directory creation
Date: 2026-06-19 14:01:47
Message-ID: ajVLauHFakqDsXsY@alvherre.pgsql
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 2026-Jun-18, Andrew Dunstan wrote:

>
> While working on the pytest stuff, I found this issue when making it work on
> Windows, but the issue can exist everywhere. pg_mkdir_p can fail if there is
> a concurrent directory creation. This patch makes it tolerant of concurrent
> directory creation.

Hmm, should the 'break's in the loop be 'continue's? If you're creating
path a/b/c, and a concurrent process beats you but is only attempting to
do a/b, then with the break you'll fail to create the final c.

--
Álvaro Herrera 48°01'N 7°57'E — https://www.EnterpriseDB.com/
Bob [Floyd] used to say that he was planning to get a Ph.D. by the "green
stamp method," namely by saving envelopes addressed to him as 'Dr. Floyd'.
After collecting 500 such letters, he mused, a university somewhere in
Arizona would probably grant him a degree. (Don Knuth)

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Fujii Masao 2026-06-19 14:15:52 Re: Fix publisher-side sequence permission reporting
Previous Message vignesh C 2026-06-19 13:59:03 Include sequences in publications created by pg_createsubscriber