Bruno Haible <[email protected]> writes: > The sort/sort-compress test fails in yesterday's CI (Oct 27) > and was OK a week ago (Oct 20). Most likely caused by commit > 2b3eb795c85633a4b808df44d19a4a9be5976c10. > > It fails on > - CentOS 7, > - macOS 13..26, > - FreeBSD 14.0, > - OpenBSD 7.7, > - Solaris 11.4. > > Find attached the log files.
I think I see what is happening. Pádraig and I wanted to continue if the compress program could not be executed. However, we wrote it in a way that depends on the return value of posix_spawn being an error. This works on modern GNU/Linux because of clone, but not on other systems using fork + exec. The child process has no way of returning ENOENT to the parent process in posix_spawn if exec fails. If we wanted to do that portably we would have to wait for the child and check that it's exit status is 127, then fallback to an uncompressed file if so. Collin
