Simon Josefsson <[email protected]> writes: > Ludovic Courtès <[email protected]> writes: > >> Also, I wonder if the problem could be a race condition, which would be >> fixed like this: >> >> diff --git a/tests/services/log-rotation.sh b/tests/services/log-rotation.sh >> index 375f563..178bb49 100644 >> --- a/tests/services/log-rotation.sh >> +++ b/tests/services/log-rotation.sh >> @@ -182,6 +182,6 @@ $herd trigger log-rotation >> until test -f "$service_log3.2.gz"; do sleep 0.2; done >> $herd status three >> $herd stop three >> -test $(file_descriptor_count) -le $initial_fd_count >> +until test $(file_descriptor_count) -le $initial_fd_count; do sleep 0.3; >> done >> >> $herd stop log-rotation >> >> >> Could you also give that a try? > > That just infloops and times out after 3 minutes...
So it’s not a timing issue… The 3 extra file descriptors we see are pipes, which may have been created by Fibers, but finding out why/where they were created is going to be tedious; we’ll need at least an strace of the ‘shepherd’ process to get some clues. Thanks for testing this! Ludo’.
