Bug 951227 - race in libvirt testsuite could prevent a successful rpm build
race in libvirt testsuite could prevent a successful rpm build
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: libvirt (Show other bugs)
Unspecified Unspecified
high Severity high
: rc
: ---
Assigned To: Eric Blake
Virtualization Bugs
: ZStream
Depends On:
Blocks: 951235
  Show dependency treegraph
Reported: 2013-04-11 13:24 EDT by Eric Blake
Modified: 2013-11-21 03:58 EST (History)
8 users (show)

See Also:
Fixed In Version: libvirt-0.10.2-19.el6
Doc Type: Bug Fix
Doc Text:
When running the libvirt test suite on a machine under heavy load, the test could end up in a deadlock. Since the test suite was run during RPM build, the build never finished if the deadlock happened. This update fixes the handling of an event loop used in the test suite, and the test suite no longer hangs in the described scenario.
Story Points: ---
Clone Of:
Last Closed: 2013-11-21 03:58:53 EST
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)

  None (edit)
Description Eric Blake 2013-04-11 13:24:36 EDT
Description of problem:
In my efforts to build a scratch image for testing other BZ in preparation for 6.4.z, I hit a deadlock that prevented the RPM from completing 'make check'.  To date, we've been lucky that brew has not hit this same deadlock, but since we know the fix, and since the fix is non-invasive (it touches _only_ the testsuite, for the 'make check' portion of making the rpm, and does not affect installed binaries), having it backported to 6.4.z would ensure that we don't hit the race in a future brew build.

Version-Release number of selected component (if applicable):

How reproducible:
< 10%

Steps to Reproduce:
1. rpmbuild --rebuild libvirt-0.10.2-18.el6_4.3.srpm
Actual results:
Rarely, the build will hang during 'make check', with output resembling:
PASS: qemumonitortest
TEST: qemumonitorjsontest
I had to ctrl-c to kill the hung test, which in turn killed the build.

Expected results:
Testsuite shouldn't hang.

Additional info:
Fixed upstream:
commit e25a32f3da801207a5009c12747f3d155ac4c43a
Author: Peter Krempa <pkrempa@redhat.com>
Date:   Mon Nov 12 11:34:41 2012 +0100

    tests: Fix qemumonitorjsontest deadlock when the machine is under load
    When doing the qemumonitorjsontest on a machine under heavy load the
    test tends to deadlock from time to time. This patch adds the hack to
    break the event loop that is used in virsh.
Comment 1 Eric Blake 2013-04-11 13:25:59 EDT
Upstream is fixed, so 6.5 is in POST awaiting next rebase.
Comment 4 Huang Wenlong 2013-07-09 03:41:57 EDT
Verify this bug with libvirt-0.10.2-19.el6.x86_64

do rpmbuild --rebuild > 20 times
# rpmbuild --rebuild libvirt-0.10.2-19.el6.src.rpm

all pass 
no hang
Comment 6 errata-xmlrpc 2013-11-21 03:58:53 EST
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.


Note You need to log in before you can comment on or make changes to this bug.