Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.
Bug 895901
Summary: | libvirt monitor socket didn't show up sometimes | ||||||||
---|---|---|---|---|---|---|---|---|---|
Product: | [Community] Virtualization Tools | Reporter: | Richard W.M. Jones <rjones> | ||||||
Component: | libvirt | Assignee: | Libvirt Maintainers <libvirt-maint> | ||||||
Status: | CLOSED UPSTREAM | QA Contact: | |||||||
Severity: | urgent | Docs Contact: | |||||||
Priority: | urgent | ||||||||
Version: | unspecified | CC: | acathrow, bfan, leiwang, mkletzan, wshi | ||||||
Target Milestone: | --- | ||||||||
Target Release: | --- | ||||||||
Hardware: | Unspecified | ||||||||
OS: | Unspecified | ||||||||
Whiteboard: | |||||||||
Fixed In Version: | Doc Type: | Bug Fix | |||||||
Doc Text: | Story Points: | --- | |||||||
Clone Of: | 892273 | Environment: | |||||||
Last Closed: | 2014-01-17 07:45:53 UTC | Type: | Bug | ||||||
Regression: | --- | Mount Type: | --- | ||||||
Documentation: | --- | CRM: | |||||||
Verified Versions: | Category: | --- | |||||||
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||||
Cloudforms Team: | --- | Target Upstream Version: | |||||||
Embargoed: | |||||||||
Bug Depends On: | |||||||||
Bug Blocks: | 910269, 892273, 1051364 | ||||||||
Attachments: |
|
Description
Richard W.M. Jones
2013-01-16 09:03:23 UTC
Created attachment 845269 [details]
build.log
Occurred again during a Fedora 20 build. The build log is attached.
Search for 'FAIL:' in the log file.
Created attachment 845292 [details]
root.log
Corresponding root.log.
The other problem is that libvirt loses information about the failure. The failures go to an obscure log file, which was lost after the build. Instead, the failures should go into the libvirt error message. So this may be related to the default timeout libvirt waits for qemu to create the monitor socket. We now wait 3 seconds at max and if the load on the system is high enough, that may not be enough for qemu. To reproduce, you might probably (no guarantee) decrease the value in "src/qemu/qemu_monitor.c" file, the "timeout" variable in qemuMonitorOpenUnix() function or write a wrapper for qemu which waits certain amount of time before launching qemu if it is supposed to run a guest. The following works for me when used as an emulator for the machine: #!/usr/bin/env python import os import sys import time TIMEOUT = 4 QEMU_PATH = "/usr/bin/qemu-kvm" if "-uuid" in sys.argv: time.sleep(TIMEOUT) sys.argv[0] = QEMU_PATH os.execv(QEMU_PATH, sys.argv) Timeout 2 seconds is ok, 4 is not and makes the guest fail to start. If that's true reproducer for you (you might try timeout of value 2 and running multiple appliances for example), than this upstream proposal might make it configurable: https://www.redhat.com/archives/libvir-list/2014-January/msg00060.html any reply in the thread is appreciated, I'll try to review it asap. We have several bugs tracking similar issues, but that's essentially the same test that we did in https://bugzilla.redhat.com/show_bug.cgi?id=1048818 Hopefully fixed upstream by v1.2.1-11-gfe89b68: commit fe89b687a02d1a8e1dce695a67b4f9d2c254d7b9 Author: Martin Kletzander <mkletzan> Date: Thu Jan 9 07:57:59 2014 +0100 qemu: Change the default unix monitor timeout |