[sos-devel] Errored: sosreport/sos#4308 (bmr-ts-perf - ddf456d)

Travis CI builds at travis-ci.org
Fri Feb 14 18:23:31 UTC 2020


Build Update for sosreport/sos
-------------------------------------

Build: #4308
Status: Errored

Duration: 7 mins and 57 secs
Commit: ddf456d (bmr-ts-perf)
Author: Bryn M. Reeves
Message: [policies] fix LinuxPolicy performance regression (test suite)

Commit 285873a introduces a regression in the performance of
LinuxProfile class initialisation:

  commit 285873a4f753822a88d475a1b030ab622bf4c72e
  Author: Bryan Quigley <bryan.quigley at canonical.com>
  Date:   Tue Feb 11 15:03:16 2020 -0800

      [policies] Detect systemd use instead of hardcoding it

All the patch does is to switch from testing self.init to
determine whether to use the SystemdInit() class or the
basic InitSystem() one, to looking for '/run/systemd/system'
in the file system.

This has more broad side effects than it might seem since
the test suite uses LinuxPolicy() as a mock policy object
for a large number of tests. Since SystemdInit() calls out
to systemctl to obtain the state of the init system this
both increases the run time for the tests and causes high
resource use in systemd itself:

PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND
  1 root      20   0  177196  13504   4512 R  92.7   0.1   5:24.04 systemd

This causes the run time for the Python2 and 3 test suite
(plus pep8/pycodestyle) to grow from ~5s to over 1m20s on
my test system:

285873a~1 real 0m5.683s
285873a   real 1m20.353s

Allow direct users of LinuxPolicy to override the init
system detection by specifying an init= kwarg initialised
to an InitSystem-like object directly, and use this in the
test suite to avoid the cost of initialising the full
SystemdInit() class.

Signed-off-by: Bryn M. Reeves <bmr at redhat.com>

View the changeset: https://github.com/sosreport/sos/commit/ddf456d944e2

View the full build log and details: https://travis-ci.org/sosreport/sos/builds/650557300?utm_medium=notification&utm_source=email

--

You can unsubscribe from build emails from the sosreport/sos repository going to https://travis-ci.org/account/preferences/unsubscribe?repository=819743&utm_medium=notification&utm_source=email.
Or unsubscribe from *all* email updating your settings at https://travis-ci.org/account/preferences/unsubscribe?utm_medium=notification&utm_source=email.
Or configure specific recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listman.redhat.com/archives/sos-devel/attachments/20200214/0c2dbc07/attachment.htm>


More information about the sos-devel mailing list