Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.

Bug 796658

Summary: Virtual guest Shutdown via WebUI failure
Product: [Community] Spacewalk Reporter: Matej Kollar <mkollar>
Component: ClientsAssignee: Milan Zázrivec <mzazrivec>
Status: CLOSED CURRENTRELEASE QA Contact: Red Hat Satellite QA List <satqe-list>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 1.6CC: cperry, lpramuk, pstudeni
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2012-03-07 09:53:53 UTC Type: ---
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: 765736, 790326    

Description Matej Kollar 2012-02-23 12:11:42 UTC
Description of problem:

  Virtual guest Shutdown scheduled via WebUI fails with

    Fatal error in Python code occurred [[6]]" (code -1)

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

  # rpm -qa | grep virt
  rhn-virtualization-common-5.4.31-1.el6.noarch
  libvirt-client-0.9.4-23.el6_2.4.x86_64
  virt-what-1.11-1.1.el6.x86_64
  python-virtinst-0.600.0-5.el6.noarch
  libvirt-0.9.4-23.el6_2.4.x86_64
  rhn-virtualization-host-5.4.31-1.el6.noarch
  libvirt-python-0.9.4-23.el6_2.4.x86_64
  virt-manager-0.9.0-7.el6.x86_64
  virt-viewer-0.4.1-7.el6.x86_64

How reproducible:

  always/deterministic

Steps to Reproduce:

  1. Setup virtual host
  2. Schedule shutdown (System
       → <virtual host> → Virtualization
       → Details → Tick a virtual guest
       → choose "Shutdown Systems" → Apply Action)
  2.5 Fetch event on virtual host.
  
Actual results:

  Virtual guest is running, WebUI says

    Client execution returned "Fatal error in Python code occurred [[6]]" (code -1)

  /var/log/up2date on host contains traceback

    Traceback (most recent call last):
      File "/usr/sbin/rhn_check", line 332, in __run_action
        (status, message, data) = CheckCli.__do_call(method, params, kwargs)
      File "/usr/sbin/rhn_check", line 325, in __do_call
        retval = method(*params, **kwargs)
      File "/usr/share/rhn/actions/virt.py", line 49, in shutdown
        support.shutdown(uuid)
      File "/usr/share/rhn/virtualization/support.py", line 110, in shutdown
        domain_control.shutdown(uuid)
      File "/usr/share/rhn/virtualization/domain_control.py", line 41, in shutdown
        _call_domain_control_routine(uuid, "shutdown")
      File "/usr/share/rhn/virtualization/domain_control.py", line 143, in _call_domain_control_routine
        result = apply(ctrl_func, args)
      File "/usr/lib64/python2.6/site-packages/libvirt.py", line 1183, in shutdown
        if ret == -1: raise libvirtError ('virDomainShutdown() failed', dom=self)
    <class 'libvirt.libvirtError'>: operation virDomainShutdown forbidden for read only access

Expected results:

  Virtual guest was shutdown-ed, no error.

Additional info:

  I was able to reproduce problem only via WebUI. When command

    # virsh shutdown <virt-domain>

  was run, virtual guest went down just OK.
  Starting manually shutdown-ed guest via WebUI works just fine.

  Exactly same error occurs when changing amount of memory or CPU#,
  but that is probably (just my hypothesis) caused by fact that
  we are unable to shutdown virtual hosts.

  This was done on IPv6-only machine (not counting IPv4 loopback)

Comment 1 Matej Kollar 2012-02-23 12:36:36 UTC
Just a little note: the virtual guest vas KVM virtualized.

Comment 2 Lukas Pramuk 2012-02-23 13:56:08 UTC
Bug is related to all virt.* commands (operation virDomain* forbidden)
virt.shutdown
virt.reboot
virt.setVCPUs


rhn_check -vv:

D: do_call virt.reboot('6b7be4266f8a6f8d529f7296d191515e',){'cache_only': None}
libvir: Domain error : operation virDomainReboot forbidden for read only access
D: Sending back response((6,), 'Fatal error in Python code occured', {})

D: do_call virt.setVCPUs('d135f6c1968678f3a32480206ae2bf90', 2){'cache_only': None}
libvir: Domain error : operation virDomainSetVcpus forbidden for read only access
D: Sending back response((6,), 'Fatal error in Python code occured', {})


Bug reproduced also on RHEL5 VM host setup: 
rpm -qa | grep virt
libvirt-0.8.2-22.el5
libvirt-0.8.2-22.el5
libvirt-python-0.8.2-22.el5
python-virtinst-0.400.3-12.el5
virt-manager-0.6.1-14.el5
rhn-virtualization-host-5.4.31-1.el5
rhn-virtualization-common-5.4.31-1.el5
virt-viewer-0.0.2-3.el5

Comment 3 Milan Zázrivec 2012-02-24 13:03:12 UTC
spacewalk.git master: dea794a58ae12c689b895182fd8bf958d2d86aaf

Comment 4 Jan Pazdziora (Red Hat) 2012-03-07 09:53:53 UTC
Spacewalk 1.7 has been released:

https://fedorahosted.org/spacewalk/wiki/ReleaseNotes17

Comment 5 Milan Zázrivec 2012-04-02 08:16:07 UTC
*** Bug 788118 has been marked as a duplicate of this bug. ***