cpu stress test output on failure is not helpful
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Checkbox (Legacy) |
Won't Fix
|
Undecided
|
Unassigned | ||
PlainBox (Toolkit) |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
for some reason, the cpu stress test failed on a system being certified, however, on looking at the output to try to sort out the issue, I was only presented with this:
stress: FAIL: [8086] (416) <-- worker 8093 got signal 9
stress: WARN: [8086] (418) now reaping child worker processes
stress: FAIL: [8086] (422) kill error: No such process
stress: FAIL: [8086] (416) <-- worker 8097 got signal 9
stress: WARN: [8086] (418) now reaping child worker processes
stress: FAIL: [8086] (422) kill error: No such process
stress: FAIL: [8086] (416) <-- worker 8100 got signal 9
stress: WARN: [8086] (418) now reaping child worker processes
stress: FAIL: [8086] (422) kill error: No such process
stress: FAIL: [8086] (416) <-- worker 8099 got signal 9
stress: WARN: [8086] (418) now reaping child worker processes
stress: FAIL: [8086] (422) kill error: No such process
stress: FAIL: [8086] (452) failed run completed in 7200s
apparently, the REST of the output was dumped to stdout, while these few lines appear in stderr, and because checkbox chooses stderr in favor of stdout on failed tests, I only get the last few lines of error output with no context to explain why it failed.
tags: | added: checkbox-core |
affects: | checkbox → plainbox-provider-checkbox |
Changed in plainbox: | |
status: | Incomplete → Fix Released |
So we either pipe stderr to stdout for this (and other) job(s), which should work because checkbox at least knows to use one if the other is empty, or we modify the core to output both stderr and stdout in all cases.
This was done to help the user discern useful output from debugging or useless stuff, and the problem is that, as you see, useful information may be lost despite scripts' best attempts to use stdout/stderr sensibly.