Quantum routes error on RHEL

Bug #797419 reported by Salvatore Orlando
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
neutron
Fix Released
Undecided
Salvatore Orlando
quantum (Ubuntu)
Fix Released
Undecided
Unassigned
Nominated for Precise by Yolanda Robla

Bug Description

A regular expression error occurs when running Quantum service on a Red Hat installation. The Quantum service is not able to process any requests on account of which this error. The exception trace can be found at http://paste.openstack.org/show/1638/

The offending regular expression appears to be coming from the URL mapper for the "port" resource:

^/tenants\/(?P<tenant_id>[^/]+?)\/networks\/(?P<network_id>[^/]+?)\/port
s\/(?P<id>[^/]+?)\/attachment(?P<.format>[^/]+?)(/)?$

Trying to validate the above regex points to a "group" error.

Possible workaround is to comment out the mapper.connect() calls for the "port" resource in quantum/api/__init__.py

The error was not observed on Ubuntu.

Related branches

description: updated
Revision history for this message
Sumit Naiksatam (snaiksat) wrote :

I originally observed this error on RHEL (details below) and reported it on the OpenStack/NetStack mailing list with the above symptoms.

RHEL version: Red Hat Enterprise Linux Server release 6.1 (Santiago)
Python version: Python 2.6.6
Routes version: python-routes-1.10.3-2.el6.noarch

Revision history for this message
Salvatore Orlando (salvatore-orlando) wrote :

I can confirm the reported failure depends on the particular version of routes.
The error does not occur when using routes 1.12

It seems there is a bug in routes 1.10 which causes an invalid regexp to be generated when format extensions are used in the mapper.connect call.

I am currently evaluating the best course of action:
1) put routes 1.12 as a requirement
2) Fix code in a way that the API works with routes 1.10 as well
3) provide a patch for routes 1.10

Changed in quantum:
assignee: nobody → Salvatore Orlando (salvatore-orlando)
status: New → Confirmed
Revision history for this message
Salvatore Orlando (salvatore-orlando) wrote :

I think the easiest and possibly most correct thing to do is put routes 1.12 as a requirement.
I've noticed errors even in Openstack API when routes 1.10 is employed; therefore there's little point in tweaking the code so that it works with routes 1.10 as well.

I'm going to add Routes>=1.12 in pip-requires, unless we agree on a different strategy.

Revision history for this message
dan wendlandt (danwent) wrote :

Sounds reasonable to me. We currently have enough on our hands just worrying about the bugs in our own software, much less the bugs in someone else's :)

Revision history for this message
Sumit Naiksatam (snaiksat) wrote :

Yes, I agree. I was able to install later python-routes-1.12.3-2.el6.noarch, and the error is gone.

What helped in getting this version of python-routes is adding the following entry to the /etc/yum.repos.d/openstack.repo (assuming that you had installed OpenStack on this host, and hence had this repo, else you could add to any other operational repo config), and then update the python-routes package.

[openstack-deps]
name=OpenStack Nova Compute Dependencies
baseurl=http://yum.griddynamics.net/yum/cactus/deps
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-OPENSTACK

Revision history for this message
Salvatore Orlando (salvatore-orlando) wrote :

Thanks Sumit!

I think we can merge this branch even without unit tests (after all it is a change to pip-requires)

Changed in quantum:
status: Confirmed → Invalid
status: Invalid → In Progress
Revision history for this message
Salvatore Orlando (salvatore-orlando) wrote :

Anyone whishing to do a quick review and see if we can get the second approve for merging the branch?

diff it's just one line :)

Changed in quantum:
status: In Progress → Fix Committed
importance: Undecided → Low
importance: Low → Undecided
dan wendlandt (danwent)
Changed in quantum:
status: Fix Committed → Fix Released
Changed in quantum (Ubuntu):
status: New → Fix Released
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.