Note: This is a beta release of Red Hat Bugzilla 5.0. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Also email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback here.
Bug 1147458 - JSONRPC | hotplug/hotunplug NIC to VM fail
Summary: JSONRPC | hotplug/hotunplug NIC to VM fail
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Red Hat Enterprise Virtualization Manager
Classification: Red Hat
Component: vdsm
Version: 3.5.0
Hardware: Unspecified
OS: Unspecified
unspecified
urgent
Target Milestone: ---
: 3.5.0
Assignee: Barak
QA Contact: Martin Pavlik
URL:
Whiteboard: network
: 1147505 (view as bug list)
Depends On:
Blocks: rhev35betablocker rhev35rcblocker rhev35gablocker
TreeView+ depends on / blocked
 
Reported: 2014-09-29 09:42 UTC by Meni Yakove
Modified: 2016-02-10 19:49 UTC (History)
13 users (show)

Fixed In Version: v4.16.6
Doc Type: Bug Fix
Doc Text:
Cause: There was a typo in the JSONRPC mapping for vNIC plugging. Consequence: The call to hotunplug would fail. Fix: Use the proper internal api call. Result: Normal operation when under JSONRPC.
Clone Of:
Environment:
Last Closed: 2015-02-16 13:39:26 UTC
oVirt Team: Network
Target Upstream Version:


Attachments (Terms of Use)
engine and vdsm logs (deleted)
2014-09-29 09:42 UTC, Meni Yakove
no flags Details


Links
System ID Priority Status Summary Last Updated
oVirt gerrit 33484 master MERGED jsonrpc: hotunplug spelling issue Never
oVirt gerrit 33532 ovirt-3.5 MERGED jsonrpc: hotunplug spelling issue Never

Description Meni Yakove 2014-09-29 09:42:30 UTC
Created attachment 942245 [details]
engine and vdsm logs

Description of problem:
hotplug/hotunplug NIC to VM fail with error:

Thread-9547::DEBUG::2014-09-28 13:56:17,249::vm::3684::vm.Vm::(hotunplugNic) vmId=`55b9e89a-d5b8-4984-8ab7-72009aba9edb`::Hotunplug NIC xml: <interface type="bridge">
        <address bus="0x00" domain="0x0000" function="0x0" slot="0x09" type="pci"/>
        <mac address="00:1a:4a:16:88:52"/>
        <model type="virtio"/>
        <source bridge="sw163"/>
        <filterref filter="vdsm-no-mac-spoofing"/>
        <link state="up"/>
        <bandwidth/>
</interface>

GuestMonitor-Global_vm_1::DEBUG::2014-09-28 13:56:17,293::vm::486::vm.Vm::(_getUserCpuTuneInfo) vmId=`8e64da17-1d6b-460f-bd35-5710eb0160a2`::Domain Metadata is not set
GuestMonitor-Global_vm_1::DEBUG::2014-09-28 13:56:17,294::vm::486::vm.Vm::(_getUserCpuTuneInfo) vmId=`8e64da17-1d6b-460f-bd35-5710eb0160a2`::Domain Metadata is not set
GuestMonitor-Global_vm_1::DEBUG::2014-09-28 13:56:17,295::vm::486::vm.Vm::(_getUserCpuTuneInfo) vmId=`8e64da17-1d6b-460f-bd35-5710eb0160a2`::Domain Metadata is not set
Thread-9547::ERROR::2014-09-28 13:56:17,530::__init__::491::jsonrpc.JsonRpcServer::(_serveRequest) Internal server error
Traceback (most recent call last):
  File "/usr/lib/python2.6/site-packages/yajsonrpc/__init__.py", line 486, in _serveRequest
    res = method(**params)
  File "/usr/share/vdsm/rpc/Bridge.py", line 286, in _dynamicMethod
    ret = retfield(result)
  File "/usr/share/vdsm/rpc/Bridge.py", line 236, in _fixupRet
    continue
  File "/usr/share/vdsm/rpc/Bridge.py", line 216, in _typeFixup
    logging.warn("Fixing up type %s", symTypeName)
TypeError: argument of type 'NoneType' is not iterable 

Version-Release number of selected component (if applicable):
vdsm-4.16.5-2.el6ev.x86_64

How reproducible:
100%

Steps to Reproduce:
1. hotplug/hotunplug NIC to/from VM


Actual results:
hotplug/hotunplug NIC fail


Additional info:
When running with XML-RPC I don't have this issue

Comment 2 Piotr Kliczewski 2014-09-29 12:54:13 UTC
It looks like ret value of hotunplugNic us None.

Comment 3 Oved Ourfali 2014-09-30 05:42:18 UTC
Antoni - does that require an additional fix, or can we move that to POST?
Thanks

Comment 4 Oved Ourfali 2014-09-30 05:56:12 UTC
*** Bug 1147505 has been marked as a duplicate of this bug. ***

Comment 5 Dan Kenigsberg 2014-09-30 08:15:12 UTC
Piotr's patch only converts the TypeError to a hand-crafted exception. It does not solve the underlying problem (how come does hotunplug return None for vmList), which is still being researched.

Comment 6 Martin Pavlik 2014-10-07 14:55:30 UTC
works in vt5 (vdsm-4.16.6-1.el6ev.x86_64)

hot plug/unplug with JSON enabled is fine


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