[Avocado-devel] "Test reported status but did not finish",

Lukáš Doktor ldoktor at redhat.com
Fri Mar 31 08:04:01 UTC 2017


Well the main usage of `cycle_timeout` is for periodic checking and the 
1s makes sense there. Using it also as a deadline for waiting for 
process finish was probably unfortunate, but we can always improve that. 
Please let me know whether 10s is enough, or whether we should make it 
even more lenient. There is a step of `0.01s` so it should not block for 
10s each test, only the ones which do not finish, so longer timeouts are 
acceptable.

Lukáš

Dne 30.3.2017 v 19:07 Vincent Matossian napsal(a):
> I'll play with that, thanks, it might be good to have cycle_timeout
> configurable in avocado config.
>
> -
> Vincent
>
> On Thu, Mar 30, 2017 at 3:35 AM, Lukáš Doktor <ldoktor at redhat.com
> <mailto:ldoktor at redhat.com>> wrote:
>
>     Dne 25.3.2017 v 18:38 Vincent Matossian napsal(a):
>
>         I intermittently see tests erroring out with reason
>
>         "fail_reason": "Test reported status but did not finish"
>
>         Unfortunately I don't have a reliable reproduction case, but was
>         wondering if it was a known issue?
>
>         I didn't deep dive in the code but looking at
>         avocado/core/runner.py's
>         run_test method, could it be that the queue ends up empty before the
>         process is actually deemed gone?
>
>         wait.wait_for(lambda: not queue.empty() or not proc.is_alive(),
>         cycle_timeout, first, step)
>
>         Any thoughts?
>
>         Thanks
>
>         Vincent
>
>
>     Dear Vincent,
>
>     the description says it all, the test process reported the status:
>
>         avocado.core.runner:L323
>         queue.put(state)
>
>     but then the process did not finish, which could be because:
>
>     1. the machine is too busy, timeout is 2s
>     2. the test spawned some threads/processes which prevent it from
>     finishing
>
>     Do you also get the "Killing hanged test process ..." messages in
>     the main `job.log`? If not it's likely the (1), otherwise it could
>     be any of those.
>
>     Perhaps you could try increasing the timeout in:
>
>         avocado.core.runner:L437
>         test_state = test_status.finish(proc, time_started, cycle_timeout,
>
>     replace the `cycle_timeout` with a number, I'd go with 10s or so and
>     let us know whether it solved your issue. We can be probably a bit
>     more lenient...
>
>     Lukáš
>
>

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 502 bytes
Desc: OpenPGP digital signature
URL: <http://listman.redhat.com/archives/avocado-devel/attachments/20170331/8d63b020/attachment.sig>


More information about the Avocado-devel mailing list