https://github.com/apple/foundationdb/pull/4254/ In the spawnProcess function, there is a loop that reads bytes read from readFD, but sometimes the number of bytes given is a ridiculously large amount (> 10^18), which causes a failed assertion further down the line in setupTraceWithOutput. This seems like there may be an issue in attempting to read the number of bytes before the child process has completed. However, there are also situations where traces want to use the bytesRead before the child process completes, or if it fails to complete at all. This will likely require some refactoring of this code path.
https://github.com/apple/foundationdb/pull/4254/ In the
spawnProcess
function, there is a loop that reads bytes read fromreadFD
, but sometimes the number of bytes given is a ridiculously large amount (> 10^18), which causes a failed assertion further down the line insetupTraceWithOutput
. This seems like there may be an issue in attempting to read the number of bytes before the child process has completed. However, there are also situations where traces want to use thebytesRead
before the child process completes, or if it fails to complete at all. This will likely require some refactoring of this code path.