Andrew Dunstan <andrew(at)dunslane(dot)net> writes:
> 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 bit:
+ if (errno != EEXIST || stat(path, &sb) != 0 || !S_ISDIR(sb.st_mode))
+ {
+ retval = -1;
+ break;
+ }
looks like it could corrupt the reported errno, ie stat() could
overwrite what mkdir() reported.
regards, tom lane