Project

General

Profile

action #71110

Reduce waiting time in case of os-autoinst shutdown

Added by okurz 11 months ago. Updated 9 months ago.

Status:
Resolved
Priority:
Normal
Assignee:
Category:
Feature requests
Target version:
Start date:
Due date:
% Done:

0%

Estimated time:
Difficulty:

Description

Motivation

Also See #68938 . Stopping isotovideo can still take quite some seconds even though no expensive action seems to going on.

Acceptance criteria

  • AC1: t/18-qemu-options.t (and potentially other tests) run significantly faster than before.
  • AC2: Tests ensure that the shutdown time does not regress again

Suggestions


Related issues

Copied from openQA Project - action #68938: Try to reduce waiting time in case of qemu (early-)exits auto_review:"QEMU terminated before QMP connection could be established at /usr/lib/os-autoinst/OpenQA/Qemu/Proc.pm line 443":retryResolved2020-07-14

History

#1 Updated by okurz 11 months ago

  • Copied from action #68938: Try to reduce waiting time in case of qemu (early-)exits auto_review:"QEMU terminated before QMP connection could be established at /usr/lib/os-autoinst/OpenQA/Qemu/Proc.pm line 443":retry added

#2 Updated by mkittler 10 months ago

  • Assignee set to mkittler

#4 Updated by mkittler 10 months ago

  • Status changed from Workable to Feedback

#5 Updated by okurz 10 months ago

the PR was accepted, the release including the change is https://github.com/mudler/mojo-ioloop-readwriteprocess/releases/tag/0.28 but also https://build.opensuse.org/package/show/devel:languages:perl/perl-Mojo-IOLoop-ReadWriteProcess is still at 0.27 . Probably because the perl autoupdate still does not work but tinita is looking into that. However https://build.opensuse.org/package/show/devel:languages:perl:autoupdate/perl-Mojo-IOLoop-ReadWriteProcess has the new version already. So created a submission with osc sr -m "Update to 0.28" devel:languages:perl:autoupdate perl-Mojo-IOLoop-ReadWriteProcess devel:languages:perl creating https://build.opensuse.org/request/show/839403

#6 Updated by okurz 10 months ago

SR accepted, now forwarded for openSUSE:Factory with https://build.opensuse.org/request/show/840304

#7 Updated by okurz 10 months ago

  • Due date set to 2020-10-15

I am setting a due date so that you can check at the due date if the package was accepted and we have all necessary requirements ready so that we can at best do the next step which would be to lower the test timeout to ensure we are always a bit faster.

#8 Updated by cdywan 9 months ago

0.28 is in now by the looks of it. Does the timeout still need adjusting?

#9 Updated by mkittler 9 months ago

As mentioned in the PR:

This saves measurably time, e.g. the os-autoinst test t/18-qemu-options.t
needs 28 seconds to execute on my system without this change and 11 seconds
with this change.

I'm not sure how much there's left to optimize. And yes, I still need to adjust the timeout. However, if we're actually enforcing that within the testsuite we should also specify in the dependency files that we require at least 0.28.

#10 Updated by okurz 9 months ago

hm, actually we would only strongly depend on 0.28 for "tests" - good that we can encode that separately :)

#11 Updated by mkittler 9 months ago

  • Due date deleted (2020-10-15)
  • Status changed from Feedback to In Progress

PR for adding the time limit test helper to os-autoinst-common to use it for t/18-qemu-options.t to cover AC2: https://github.com/os-autoinst/os-autoinst-common/pull/3

#12 Updated by okurz 9 months ago

mkittler wrote:

PR for adding the time limit test helper to os-autoinst-common to use it for t/18-qemu-options.t to cover AC2: https://github.com/os-autoinst/os-autoinst-common/pull/3

ok, not a bad idea. But why not just rely on what is already there in https://github.com/os-autoinst/os-autoinst/blob/master/t/18-qemu-options.t#L90 ?

#13 Updated by mkittler 9 months ago

PR for changing the specific time check: https://github.com/os-autoinst/os-autoinst/pull/1552

#15 Updated by okurz 9 months ago

PR is merged, https://build.opensuse.org/package/live_build_log/devel:openQA/os-autoinst/openSUSE_Factory_PowerPC/ppc64le failed now with

[  248s] 3: ./17-basetest.t .......................... ok
[  248s] 3: Bailout called.  Further testing stopped:  test exceeds runtime limit of '5' seconds
[  248s] 3: FAILED--Further testing stopped: test exceeds runtime limit of '5' seconds
[  248s] 3/3 Test #3: test-perl-testsuite ..............***Failed   86.27 sec

looks a bit like the test already passed but maybe a dirty subprocess is stuck or needs longer to finish

#16 Updated by mkittler 9 months ago

Likely 5 seconds are too low in OBS anyways. I'll add timeout scaling like for the CI: https://github.com/os-autoinst/os-autoinst/pull/1556

#17 Updated by okurz 9 months ago

merged. Please wait for results in OBS.

#18 Updated by mkittler 9 months ago

  • Status changed from In Progress to Feedback

Looks like all builds succeed (unless unresolvable or blocked).

#19 Updated by okurz 9 months ago

That should be enough waiting :) Thank you so far. I wanted to check what travis CI records as runtime for the individual test so that we can check on the current value. But I realized we don't record the timer output. Anyway, unless you plan for more work feel welcome to set to "Resolved" now

#20 Updated by mkittler 9 months ago

  • Status changed from Feedback to Resolved

Also available in: Atom PDF