[Avocado-devel] "Test reported status but did not finish",
Vincent Matossian
vastinnocentaims at gmail.com
Thu Apr 13 04:35:18 UTC 2017
Hi Lukáš,
Increasing cycle_timeout to 10s has worked out well, I haven't run into the
issue again since.
-
Vincent
On Fri, Mar 31, 2017 at 1:04 AM, Lukáš Doktor <ldoktor at redhat.com> wrote:
> 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 --------------
An HTML attachment was scrubbed...
URL: <http://listman.redhat.com/archives/avocado-devel/attachments/20170412/05f0cb00/attachment.htm>
More information about the Avocado-devel
mailing list