mirror of
https://github.com/scylladb/scylladb.git
synced 2026-04-25 02:50:33 +00:00
pytest changes the test's sys.stdout and sys.stderr to the captured fds when it captures the outputs of the test. so we are not able to get the STDOUT_FILENO and STDERR_FILENO in C by querying `sys.stdout.fileno()` and `sys.stderr.fileno()`. their return values are not 1 and 2 anymore, unless pytest is started with "-s". so, to ensure that we always redirect the child process's outputs to the log file. we need to use 1 and 2 for accessing the well-known fds, which are the ones used by the child process, when it writes to stdout and stderr. this change should address the problem that the log file is always empty, unless "-s" is specified. Signed-off-by: Kefu Chai <kefu.chai@scylladb.com> Closes scylladb/scylladb#15560