network-list/network-show not working for Quantum (Nova API extension os-networks broken for Quantum)

Bug #1076519 reported by Christian Berendt
20
This bug affects 4 people
Affects Status Importance Assigned to Milestone
OpenStack Compute (nova)
Fix Released
Undecided
Vish Ishaya
python-novaclient
Invalid
Undecided
Unassigned

Bug Description

When using "network-list" I don't receive a list of available network when using Quantum as network service (network_api_class=nova.network.quantumv2.api.API)

admin:~ # nova network-list
ERROR: The server has either erred or is incapable of performing the requested operation. (HTTP 500) (Request-ID: req-5b059cd4-bc0c-4230-9b00-f971f5bd8978)

2012-11-08 20:09:40 INFO nova.api.openstack.wsgi [req-5b059cd4-bc0c-4230-9b00-f971f5bd8978 5d795ef6a803425e902922bb8f817828 5536f9774f2f42f4a5d4bbc47a484ae8] GET http://172.19.13.70:8774/v2/5536f9774f2f42f4a5d4bbc47a484ae8/os-networks
2012-11-08 20:09:40 DEBUG nova.api.openstack.wsgi [req-5b059cd4-bc0c-4230-9b00-f971f5bd8978 5d795ef6a803425e902922bb8f817828 5536f9774f2f42f4a5d4bbc47a484ae8] No Content-Type provided in request from (pid=20026) get_body /usr/lib64/python2.6/site-packages/nova/api/openstack/wsgi.py:783
2012-11-08 20:09:40 DEBUG nova.openstack.common.rpc.amqp [-] Making asynchronous call on network ... from (pid=20026) multicall /usr/lib64/python2.6/site-packages/nova/openstack/common/rpc/amqp.py:351
2012-11-08 20:09:40 DEBUG nova.openstack.common.rpc.amqp [-] MSG_ID is 95d7dea44b7f4918b1d637d1a690a72c from (pid=20026) multicall /usr/lib64/python2.6/site-packages/nova/openstack/common/rpc/amqp.py:354
2012-11-08 20:10:40 ERROR nova.openstack.common.rpc.common [-] Timed out waiting for RPC response: timed out
2012-11-08 20:10:40 TRACE nova.openstack.common.rpc.common Traceback (most recent call last):
2012-11-08 20:10:40 TRACE nova.openstack.common.rpc.common File "/usr/lib64/python2.6/site-packages/nova/openstack/common/rpc/impl_kombu.py", line 513, in ensure
2012-11-08 20:10:40 TRACE nova.openstack.common.rpc.common return method(*args, **kwargs)
2012-11-08 20:10:40 TRACE nova.openstack.common.rpc.common File "/usr/lib64/python2.6/site-packages/nova/openstack/common/rpc/impl_kombu.py", line 590, in _consume
2012-11-08 20:10:40 TRACE nova.openstack.common.rpc.common return self.connection.drain_events(timeout=timeout)
2012-11-08 20:10:40 TRACE nova.openstack.common.rpc.common File "/usr/lib64/python2.6/site-packages/kombu/connection.py", line 110, in drain_events
2012-11-08 20:10:40 TRACE nova.openstack.common.rpc.common return self.transport.drain_events(self.connection, **kwargs)
2012-11-08 20:10:40 TRACE nova.openstack.common.rpc.common File "/usr/lib64/python2.6/site-packages/kombu/transport/pyamqplib.py", line 200, in drain_events
2012-11-08 20:10:40 TRACE nova.openstack.common.rpc.common return connection.drain_events(**kwargs)
2012-11-08 20:10:40 TRACE nova.openstack.common.rpc.common File "/usr/lib64/python2.6/site-packages/kombu/transport/pyamqplib.py", line 50, in drain_events
2012-11-08 20:10:40 TRACE nova.openstack.common.rpc.common return self.wait_multi(self.channels.values(), timeout=timeout)
2012-11-08 20:10:40 TRACE nova.openstack.common.rpc.common File "/usr/lib64/python2.6/site-packages/kombu/transport/pyamqplib.py", line 56, in wait_multi
2012-11-08 20:10:40 TRACE nova.openstack.common.rpc.common chanmap.keys(), allowed_methods, timeout=timeout)
2012-11-08 20:10:40 TRACE nova.openstack.common.rpc.common File "/usr/lib64/python2.6/site-packages/kombu/transport/pyamqplib.py", line 104, in _wait_multiple
2012-11-08 20:10:40 TRACE nova.openstack.common.rpc.common channel, method_sig, args, content = self.read_timeout(timeout)
2012-11-08 20:10:40 TRACE nova.openstack.common.rpc.common File "/usr/lib64/python2.6/site-packages/kombu/transport/pyamqplib.py", line 86, in read_timeout
2012-11-08 20:10:40 TRACE nova.openstack.common.rpc.common return self.method_reader.read_method()
2012-11-08 20:10:40 TRACE nova.openstack.common.rpc.common File "/usr/lib64/python2.6/site-packages/amqplib/client_0_8/method_framing.py", line 215, in read_method
2012-11-08 20:10:40 TRACE nova.openstack.common.rpc.common raise m
2012-11-08 20:10:40 TRACE nova.openstack.common.rpc.common timeout: timed out
2012-11-08 20:10:40 TRACE nova.openstack.common.rpc.common
2012-11-08 20:10:40 ERROR nova.api.openstack [req-5b059cd4-bc0c-4230-9b00-f971f5bd8978 5d795ef6a803425e902922bb8f817828 5536f9774f2f42f4a5d4bbc47a484ae8] Caught error: Timeout while waiting on RPC response.
2012-11-08 20:10:40 TRACE nova.api.openstack Traceback (most recent call last):
2012-11-08 20:10:40 TRACE nova.api.openstack File "/usr/lib64/python2.6/site-packages/nova/api/openstack/__init__.py", line 78, in __call__
2012-11-08 20:10:40 TRACE nova.api.openstack return req.get_response(self.application)
2012-11-08 20:10:40 TRACE nova.api.openstack File "/usr/lib64/python2.6/site-packages/webob/request.py", line 1053, in get_response
2012-11-08 20:10:40 TRACE nova.api.openstack application, catch_exc_info=False)
2012-11-08 20:10:40 TRACE nova.api.openstack File "/usr/lib64/python2.6/site-packages/webob/request.py", line 1022, in call_application
2012-11-08 20:10:40 TRACE nova.api.openstack app_iter = application(self.environ, start_response)
2012-11-08 20:10:40 TRACE nova.api.openstack File "/usr/lib64/python2.6/site-packages/webob/dec.py", line 159, in __call__
2012-11-08 20:10:40 TRACE nova.api.openstack return resp(environ, start_response)
2012-11-08 20:10:40 TRACE nova.api.openstack File "/usr/lib64/python2.6/site-packages/keystone/middleware/auth_token.py", line 278, in __call__
2012-11-08 20:10:40 TRACE nova.api.openstack return self.app(env, start_response)
2012-11-08 20:10:40 TRACE nova.api.openstack File "/usr/lib64/python2.6/site-packages/webob/dec.py", line 159, in __call__
2012-11-08 20:10:40 TRACE nova.api.openstack return resp(environ, start_response)
2012-11-08 20:10:40 TRACE nova.api.openstack File "/usr/lib64/python2.6/site-packages/webob/dec.py", line 159, in __call__
2012-11-08 20:10:40 TRACE nova.api.openstack return resp(environ, start_response)
2012-11-08 20:10:40 TRACE nova.api.openstack File "/usr/lib64/python2.6/site-packages/routes/middleware.py", line 131, in __call__
2012-11-08 20:10:40 TRACE nova.api.openstack response = self.app(environ, start_response)
2012-11-08 20:10:40 TRACE nova.api.openstack File "/usr/lib64/python2.6/site-packages/webob/dec.py", line 159, in __call__
2012-11-08 20:10:40 TRACE nova.api.openstack return resp(environ, start_response)
2012-11-08 20:10:40 TRACE nova.api.openstack File "/usr/lib64/python2.6/site-packages/webob/dec.py", line 147, in __call__
2012-11-08 20:10:40 TRACE nova.api.openstack resp = self.call_func(req, *args, **self.kwargs)
2012-11-08 20:10:40 TRACE nova.api.openstack File "/usr/lib64/python2.6/site-packages/webob/dec.py", line 208, in call_func
2012-11-08 20:10:40 TRACE nova.api.openstack return self.func(req, *args, **kwargs)
2012-11-08 20:10:40 TRACE nova.api.openstack File "/usr/lib64/python2.6/site-packages/nova/api/openstack/wsgi.py", line 885, in __call__
2012-11-08 20:10:40 TRACE nova.api.openstack content_type, body, accept)
2012-11-08 20:10:40 TRACE nova.api.openstack File "/usr/lib64/python2.6/site-packages/nova/api/openstack/wsgi.py", line 933, in _process_stack
2012-11-08 20:10:40 TRACE nova.api.openstack action_result = self.dispatch(meth, request, action_args)
2012-11-08 20:10:40 TRACE nova.api.openstack File "/usr/lib64/python2.6/site-packages/nova/api/openstack/wsgi.py", line 1021, in dispatch
2012-11-08 20:10:40 TRACE nova.api.openstack return method(req=request, **action_args)
2012-11-08 20:10:40 TRACE nova.api.openstack File "/usr/lib64/python2.6/site-packages/nova/api/openstack/compute/contrib/networks.py", line 90, in index
2012-11-08 20:10:40 TRACE nova.api.openstack networks = self.network_api.get_all(context)
2012-11-08 20:10:40 TRACE nova.api.openstack File "/usr/lib64/python2.6/site-packages/nova/network/api.py", line 89, in get_all
2012-11-08 20:10:40 TRACE nova.api.openstack {'method': 'get_all_networks'})
2012-11-08 20:10:40 TRACE nova.api.openstack File "/usr/lib64/python2.6/site-packages/nova/openstack/common/rpc/__init__.py", line 102, in call
2012-11-08 20:10:40 TRACE nova.api.openstack return _get_impl().call(cfg.CONF, context, topic, msg, timeout)
2012-11-08 20:10:40 TRACE nova.api.openstack File "/usr/lib64/python2.6/site-packages/nova/openstack/common/rpc/impl_kombu.py", line 712, in call
2012-11-08 20:10:40 TRACE nova.api.openstack rpc_amqp.get_connection_pool(conf, Connection))
2012-11-08 20:10:40 TRACE nova.api.openstack File "/usr/lib64/python2.6/site-packages/nova/openstack/common/rpc/amqp.py", line 368, in call
2012-11-08 20:10:40 TRACE nova.api.openstack rv = list(rv)
2012-11-08 20:10:40 TRACE nova.api.openstack File "/usr/lib64/python2.6/site-packages/nova/openstack/common/rpc/amqp.py", line 329, in __iter__
2012-11-08 20:10:40 TRACE nova.api.openstack self.done()
2012-11-08 20:10:40 TRACE nova.api.openstack File "/usr/lib64/python2.6/contextlib.py", line 23, in __exit__
2012-11-08 20:10:40 TRACE nova.api.openstack self.gen.next()
2012-11-08 20:10:40 TRACE nova.api.openstack File "/usr/lib64/python2.6/site-packages/nova/openstack/common/rpc/amqp.py", line 326, in __iter__
2012-11-08 20:10:40 TRACE nova.api.openstack self._iterator.next()
2012-11-08 20:10:40 TRACE nova.api.openstack File "/usr/lib64/python2.6/site-packages/nova/openstack/common/rpc/impl_kombu.py", line 595, in iterconsume
2012-11-08 20:10:40 TRACE nova.api.openstack yield self.ensure(_error_callback, _consume)
2012-11-08 20:10:40 TRACE nova.api.openstack File "/usr/lib64/python2.6/site-packages/nova/openstack/common/rpc/impl_kombu.py", line 526, in ensure
2012-11-08 20:10:40 TRACE nova.api.openstack error_callback(e)
2012-11-08 20:10:40 TRACE nova.api.openstack File "/usr/lib64/python2.6/site-packages/nova/openstack/common/rpc/impl_kombu.py", line 576, in _error_callback
2012-11-08 20:10:40 TRACE nova.api.openstack raise rpc_common.Timeout()
2012-11-08 20:10:40 TRACE nova.api.openstack Timeout: Timeout while waiting on RPC response.
2012-11-08 20:10:40 TRACE nova.api.openstack
2012-11-08 20:10:40 INFO nova.api.openstack [req-5b059cd4-bc0c-4230-9b00-f971f5bd8978 5d795ef6a803425e902922bb8f817828 5536f9774f2f42f4a5d4bbc47a484ae8] http://172.19.13.70:8774/v2/5536f9774f2f42f4a5d4bbc47a484ae8/os-networks returned with HTTP 500
2012-11-08 20:10:40 INFO nova.osapi_compute.wsgi.server [req-5b059cd4-bc0c-4230-9b00-f971f5bd8978 5d795ef6a803425e902922bb8f817828 5536f9774f2f42f4a5d4bbc47a484ae8] 172.19.134.140 - - [08/Nov/2012 20:10:40] "GET /v2/5536f9774f2f42f4a5d4bbc47a484ae8/os-networks HTTP/1.1" 500 335 60.324990

Revision history for this message
Christian Berendt (berendt) wrote : Re: network-list/networkshow not working for Quantum (extension os-networks broken)

Problem is that the API extension "os-networks" is not working for Quantum.

Should this extension be fixed to also be usable with Quantum or are there any other plans to integrate Quantum into the Nova API (to have at least functionality for network-list and network-show).

summary: - network-list not working for Quantum
+ network-list/networkshow not working for Quantum (extension os-networks
+ broken)
summary: - network-list/networkshow not working for Quantum (extension os-networks
- broken)
+ network-list/network-show not working for Quantum (Nova API extension
+ os-networks broken for Quantum)
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to nova (master)

Fix proposed to branch: master
Review: https://review.openstack.org/22264

Changed in nova:
assignee: nobody → Vish Ishaya (vishvananda)
status: New → In Progress
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to nova (master)

Reviewed: https://review.openstack.org/22264
Committed: http://github.com/openstack/nova/commit/a28d8e17d9a482b1c473e2deab6083a903cbf204
Submitter: Jenkins
Branch: master

commit a28d8e17d9a482b1c473e2deab6083a903cbf204
Author: Vishvananda Ishaya <email address hidden>
Date: Mon Feb 18 16:06:35 2013 -0800

    Fix network list and show with quantum.

    The quantum driver was returning data in a format that was not
    compatible with the extension. This munges the data and handles
    fields that don't exist so the extensions still work.

    Fixes bug 1076519

    Change-Id: I5e00bfa72e8ce1d486f9aa4dddbe1080ff74cd6a

Changed in nova:
status: In Progress → Fix Committed
Thierry Carrez (ttx)
Changed in nova:
milestone: none → grizzly-3
status: Fix Committed → Fix Released
Thierry Carrez (ttx)
Changed in nova:
milestone: grizzly-3 → 2013.1
Revision history for this message
melanie witt (melwitt) wrote :

I think this was a nova bug that was fixed.

Changed in python-novaclient:
status: New → Invalid
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.