Russell Nelson writes:
Sam Varshavchik writes:
> Since filenames for messages in maildirs are generated based on the
> combination of the pid, and the current time, in seconds, there is now a
> race condition that will result in loss or corruption of mail. This breaks
> Courier and Qmail.
Not for qmail, it doesn't. In the unlikely event that corruption
would occur, qmail-local sleeps two seconds and tries again. At that
point, the pid is still the same and the time is different.
How exactly would qmail-local (which started at T+900 milliseconds) know
that it needs to do that; when at T+700 milliseconds an app moved a file
carrying the same filename from new to cur, and THAT file was delivered to
new by another qmail-local process that had the same pid, but which exited
at T+500 milliseconds?