[SRU] python-neutronclient 1:2.3.11 + long request URI's don't work with Kilo

Bug #1479496 reported by David Medberry
16
This bug affects 2 people
Affects Status Importance Assigned to Milestone
python-neutronclient (Ubuntu)
Fix Released
High
James Page
Vivid
Fix Released
High
Unassigned
Wily
Fix Released
High
James Page

Bug Description

[Impact]
Users with any number of networks and routers are unable to query the neutron api due to the large size of the request URI being made.

[Test Case]
See original bug report

[Regression Potential]
Minimal; fixes regression in behaviour in neutronclient 2.3.11.

[Original bug report]
python-neutronclient 1:2.3.11-0ubuntu1~cloud0

In a network with 80+ networks and routers

returns an error with:

[DEV] root@bfd02-control-001:~# neutron net-list
Request URI Too Long

See attached file for output from: neutron --debug net-list

A quick check with venv pip install indicates 2.6.0 works fine.

Revision history for this message
David Medberry (med) wrote :
Download full text (110.3 KiB)

[DEV] root@bfd02-control-001:~# neutron --debug net-list
DEBUG: keystoneclient.session REQ: curl -g -i -X GET http://bfd02-internal.os.cloud.twc.net:5000/v2.0/ -H "Accept: application/json" -H "User-Agent: python-keystoneclient"
DEBUG: keystoneclient.session RESP: [200] content-length: 348 vary: X-Auth-Token server: Apache/2.4.7 (Ubuntu) connection: close date: Wed, 29 Jul 2015 19:44:36 GMT x-openstack-request-id: req-42db0f8e-e7f8-4c72-b63d-6e5c1f76f862 content-type: application/json x-distribution: Ubuntu
RESP BODY: {"version": {"status": "stable", "updated": "2014-04-17T00:00:00Z", "media-types": [{"base": "application/json", "type": "application/vnd.openstack.identity-v2.0+json"}], "id": "v2.0", "links": [{"href": "http://bfd02.os.cloud.twc.net:5000/v2.0/", "rel": "self"}, {"href": "http://docs.openstack.org/", "type": "text/html", "rel": "describedby"}]}}

DEBUG: stevedore.extension found extension EntryPoint.parse('table = cliff.formatters.table:TableFormatter')
DEBUG: stevedore.extension found extension EntryPoint.parse('csv = cliff.formatters.commaseparated:CSVLister')
DEBUG: neutronclient.neutron.v2_0.network.ListNetwork get_data(Namespace(columns=[], fields=[], formatter='table', max_width=0, page_size=None, quote_mode='nonnumeric', request_format='json', show_details=False, sort_dir=[], sort_key=[]))
DEBUG: keystoneclient.auth.identity.v2 Making authentication request to http://bfd02.os.cloud.twc.net:5000/v2.0/tokens
DEBUG: keystoneclient.session REQ: curl -g -i -X GET http://bfd02.os.cloud.twc.net:9696/v2.0/networks.json -H "User-Agent: python-neutronclient" -H "Accept: application/json" -H "X-Auth-Token: {SHA1}2197b6b3cf2efe0c97e40a4ff5dc879e811b3380"
DEBUG: keystoneclient.session RESP: [200] date: Wed, 29 Jul 2015 19:44:38 GMT connection: keep-alive content-type: application/json; charset=UTF-8 content-length: 102252 x-openstack-request-id: req-d5d3e4d2-dde2-40f8-a917-44af7045cd98
RESP BODY: {"networks": [{"status": "ACTIVE", "subnets": ["ad0fd0a0-951e-41eb-8e0b-b1d531532b77"], "name": "dwm2-net-41", "provider:physical_network": null, "router:external": false, "tenant_id": "d29c77bdbdde4e159d490dc7cc8ff3f5", "admin_state_up": true, "provider:network_type": "vxlan", "shared": false, "port_security_enabled": true, "mtu": null, "id": "003b01f6-f97a-415f-9b80-5ba73eed0ede", "provider:segmentation_id": 5226}, {"status": "ACTIVE", "subnets": ["9e11277b-37c3-4453-9632-67898b842a07"], "name": "dwm-net-23", "provider:physical_network": null, "router:external": false, "tenant_id": "d29c77bdbdde4e159d490dc7cc8ff3f5", "admin_state_up": true, "provider:network_type": "vxlan", "shared": false, "port_security_enabled": true, "mtu": null, "id": "006a0886-277b-41a0-a989-c277de374d31", "provider:segmentation_id": 5098}, {"status": "ACTIVE", "subnets": ["ceef02a3-0a1e-4c7f-83fe-eee95c775656"], "name": "dwm-net-7", "provider:physical_network": null, "router:external": false, "tenant_id": "d29c77bdbdde4e159d490dc7cc8ff3f5", "admin_state_up": true, "provider:network_type": "vxlan", "shared": false, "port_security_enabled": true, "mtu": null, "id": "01ef6e08-701a-4b24-9782-270c33e571c5", "provider:segmentation_id": 5082}, {"status": "ACTIVE", "subnets...

Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in python-neutronclient (Ubuntu):
status: New → Confirmed
Revision history for this message
David Medberry (med) wrote :

This is also true in Vivid (not just UCA).

vivid (python): client - Neutron is a virtual network service for Openstack
1:2.3.11-0ubuntu1: all

Revision history for this message
David Medberry (med) wrote :

As noted elsewhere, this is a remnant of:
https://bugs.launchpad.net/python-neutronclient/+bug/1422736
in the upstream openstack python-neutronclient library
which points to this commit:

https://git.openstack.org/cgit/openstack/python-neutronclient/commit/?id=4b6ed760d4303744907feefd81e60f38ae3750ef

which could be added to debian/patches

James Page (james-page)
Changed in python-neutronclient (Ubuntu):
importance: Undecided → High
Changed in python-neutronclient (Ubuntu Vivid):
status: New → Fix Released
importance: Undecided → High
summary: - python-neutronclient 1:2.3.11 doesn't work with Kilo
+ python-neutronclient 1:2.3.11 + long request URI's don't work with Kilo
description: updated
Revision history for this message
James Page (james-page) wrote :

David

Thanks for the detail on this bug; I've picked the fixes and uploaded for SRU team review.

Changed in python-neutronclient (Ubuntu Wily):
status: Confirmed → In Progress
assignee: nobody → James Page (james-page)
summary: - python-neutronclient 1:2.3.11 + long request URI's don't work with Kilo
+ [SRU] python-neutronclient 1:2.3.11 + long request URI's don't work with
+ Kilo
Revision history for this message
Brian Murray (brian-murray) wrote :

See bug 1422736 for information about the upstream fix for this.

Changed in python-neutronclient (Ubuntu Vivid):
status: Fix Released → In Progress
status: In Progress → Fix Committed
tags: added: verification-needed
Revision history for this message
Brian Murray (brian-murray) wrote : Please test proposed package

Hello David, or anyone else affected,

Accepted python-neutronclient into vivid-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/python-neutronclient/1:2.3.11-0ubuntu1.1 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, and change the tag from verification-needed to verification-done. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

James Page (james-page)
Changed in python-neutronclient (Ubuntu Wily):
status: In Progress → Fix Released
Revision history for this message
David Medberry (med) wrote :

Verified in clean vivid.

tags: added: verification-done
removed: verification-needed
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package python-neutronclient - 1:2.3.11-0ubuntu1.1

---------------
python-neutronclient (1:2.3.11-0ubuntu1.1) vivid; urgency=medium

  * d/p/long-request-uri.patch: Cherry pick fix from upstream VCS to
    ensure that long request URI's (> 8192) are detected and broken
    up into chunks before sending to the Neutron API server
    (LP: #1479496).

 -- James Page <email address hidden> Thu, 30 Jul 2015 07:42:19 +0200

Changed in python-neutronclient (Ubuntu Vivid):
status: Fix Committed → Fix Released
Revision history for this message
Adam Conrad (adconrad) wrote : Update Released

The verification of the Stable Release Update for python-neutronclient has completed successfully and the package has now been released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.

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.