On Mon, 22 Jul 2024 09:35:17 +0200
Thomas Huth <th...@redhat.com> wrote:

> On 16/07/2024 14.59, Igor Mammedov wrote:
> > CI often fails 'cross-i686-tci' job due to runner slowness
> > Log shows that test almost complete, with a few remaining
> > when bios-tables-test timeout hits:
> > 
> >    19/270 qemu:qtest+qtest-aarch64 / qtest-aarch64/bios-tables-test
> >      TIMEOUT        610.02s   killed by signal 15 SIGTERM
> >    ...
> >    stderr:
> >    TAP parsing error: Too few tests run (expected 8, got 7)
> > 
> > At the same time overall job running time is only ~30 out of 1hr allowed.
> > 
> > Increase bios-tables-test instance timeout on 5min as a fix
> > for slow CI runners.
> > 
> > Signed-off-by: Igor Mammedov <imamm...@redhat.com>
> > ---
> >   tests/qtest/meson.build | 2 +-
> >   1 file changed, 1 insertion(+), 1 deletion(-)  
> 
> Since we're entering the freeze period this week, I'm going to pick up this 
> patch for my next pull request in the hope that it will help to get this job 
> green again during the freeze period. But in the long run, it would be 
> really good if someone familiar with the bios-tables-test could analyze why 
> the run time increased so much in recent times for this test and provide a 
> better fix for the problem.

running UEFI guest under TCG was always slow (more so for aarch64),
but we keep adding more sub-cases to bios-tables-test (each running
firmware), and that takes extra time.
Overall time to run bios-tables-test naturally increases,
so we have to increase timeout eventually regardless of everything else.
(however there has not been new tests added since 9.0)

In cases I've looked at, meson timed out at the end of bios-tables-test,
where almost all cases were executed modulo the last.
Given flakiness of failure and changes to sub-cases, a few things
could lead to it:
  * performance regression when executing aarch64 tests, not much but enough
    to push the last sub-test behind 10min boundary more often than not
    (either qemu or firmware) (maybe running a few 9.0 jobs and comparing
     them to the current master would show if guest became slower)
  * CI job runners became slower (we can't control that if I'm not wrong).
    As was suggested in another thread running less test in parallel
    might help. But I won't bet on it, since it the end (by the time close
    to timeout) only a few test are still running so it might be not much
    contention on CPU resources.

> 
>   Thanks,
>    Thomas
> 
> 


Reply via email to