[SRU] Cannot associate a second network/vlan to a tenant with "nova-manage network modify"

Bug #952176 reported by Eric Dodemont
30
This bug affects 8 people
Affects Status Importance Assigned to Milestone
OpenStack Compute (nova)
Fix Released
Medium
MotoKen
Essex
Fix Released
Undecided
Unassigned
nova (Ubuntu)
Fix Released
Undecided
Unassigned
Precise
Fix Released
Undecided
Chuck Short

Bug Description

I want to start an instance with two NICs:

NIC1: eth0 connected to network1 (10.10.1.0/24 vlan1)
NIC2: eth1 connected to network2 (10.10.2.0/24 vlan2)

Let's say that network1/vlan1 was already associated automatically to my tenant.

In diablo, I would do this to associate the second network/vlan to my tenant:

# nova-manage network modify --network 10.10.2.0/24 --project 10 --host node1

In Essex, when I do the same, I get an error:

# nova-manage network modify --fixed_range 10.10.2.0/24 --project ca1d23c6d2fe4f40b4f855bf7896f7d5 --host node1

2012-03-11 12:23:31 CRITICAL nova [-] 'bool' object has no attribute 'decode'
(nova): TRACE: Traceback (most recent call last):
(nova): TRACE: File "/usr/bin/nova-manage", line 2201, in <module>
(nova): TRACE: main()
(nova): TRACE: File "/usr/bin/nova-manage", line 2182, in main
(nova): TRACE: fn_kwargs[k] = v.decode('utf-8')
(nova): TRACE: AttributeError: 'bool' object has no attribute 'decode'

If I do the network-tenant association in the DB directly, it works:

mysql> update networks set host='node1' where cidr='10.10.2.0/24';
mysql> update networks set project_id='ca1d23c6d2fe4f40b4f855bf7896f7d5' where cidr='10.10.2.0/24';

# nova-manage network list

id IPv4 IPv6 start address DNS1 DNS2 VlanID project uuid
1 10.10.1.0/24 None 10.10.1.3 None None 1 ca1d... 477a...
2 10.10.2.0/24 None 10.10.2.3 None None 2 ca1d... 9d41...
3 10.10.3.0/24 None 10.10.3.3 None None 3 None 2296...
4 10.10.4.0/24 None 10.10.4.3 None None 4 None 0eca...

# nova boot --flavor 7 --image ae9076a1-7769-4eed-ad4e-bad2db92fe34 --key_name dodeeric --security_group web-server --nic net-id=477a1978-8a7a-4475-baa1-34a9eac2d4bb,v4-fixed-ip=10.10.1.15 --nic net-id=9d41b104-d851-451f-8068-90811a101f17,v4-fixed-ip=10.10.2.15 i1

I am running:

OS: Ubuntu Precise (beta1)
Nova: 2012.1~rc1~20120311.13288-0ubuntu0ppa1~precise1 (from ppa:openstack-ppa/bleeding-edge)

Related branches

CVE References

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/6358

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

Reviewed: https://review.openstack.org/6358
Committed: http://github.com/openstack/nova/commit/0f7db908f9d18b0d2fef30af09a53018b130394a
Submitter: Jenkins
Branch: master

commit 0f7db908f9d18b0d2fef30af09a53018b130394a
Author: MotoKen <email address hidden>
Date: Mon Apr 9 10:33:55 2012 +0800

    Fixes bug 952176

    Checks if value is string or not before decode.

    Change-Id: I3f839770fdd7b00223ce02b95b2a265d903fa00e

Changed in nova:
status: In Progress → Fix Committed
Revision history for this message
Eric Dodemont (dodeeric) wrote : Re: Cannot associate a second network/vlan to a tenant with "nova-manage network modify"

I checked, and it works now.

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to nova (stable/essex)

Fix proposed to branch: stable/essex
Review: https://review.openstack.org/7298

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to nova (stable/essex)

Reviewed: https://review.openstack.org/7298
Committed: http://github.com/openstack/nova/commit/9e9a554cba9e52430c2b2857bed744aba2ff8f9e
Submitter: Jenkins
Branch: stable/essex

commit 9e9a554cba9e52430c2b2857bed744aba2ff8f9e
Author: MotoKen <email address hidden>
Date: Mon Apr 9 10:33:55 2012 +0800

    Fixes bug 952176

    Checks if value is string or not before decode.

    Change-Id: I3f839770fdd7b00223ce02b95b2a265d903fa00e

tags: added: in-stable-essex
Devin Carlen (devcamcar)
Changed in nova:
importance: Undecided → Medium
milestone: none → folsom-1
Thierry Carrez (ttx)
Changed in nova:
status: Fix Committed → Fix Released
Chuck Short (zulcss)
Changed in nova (Ubuntu):
status: New → In Progress
Changed in nova (Ubuntu Precise):
status: New → In Progress
Chuck Short (zulcss)
summary: - Cannot associate a second network/vlan to a tenant with "nova-manage
- network modify"
+ [SRU] Cannot associate a second network/vlan to a tenant with "nova-
+ manage network modify"
Revision history for this message
Chuck Short (zulcss) wrote :

** Impact **

Trying to assoicate a second network/vlanc to a tennant results in the following traceback:

2012-03-11 12:23:31 CRITICAL nova [-] 'bool' object has no attribute 'decode'
(nova): TRACE: Traceback (most recent call last):
(nova): TRACE: File "/usr/bin/nova-manage", line 2201, in <module>
(nova): TRACE: main()
(nova): TRACE: File "/usr/bin/nova-manage", line 2182, in main
(nova): TRACE: fn_kwargs[k] = v.decode('utf-8')
(nova): TRACE: AttributeError: 'bool' object has no attribute 'decode'

This can be worked around by modifying the mysql database directly.

** Development Fix **

This has been addressed in https://review.openstack.org/6358 and fixed in quantal.

** Stable Fix **

This has been addressed in https://review.openstack.org/7298.

** Test Case **

(As above)

I want to start an instance with two NICs:

NIC1: eth0 connected to network1 (10.10.1.0/24 vlan1)
NIC2: eth1 connected to network2 (10.10.2.0/24 vlan2)

Let's say that network1/vlan1 was already associated automatically to my tenant.

nova-manage network modify --network 10.10.2.0/24 --project 10 --host node1

** Regression Impact **

Minimal this is a corner case usage of Openstack.

Chuck Short (zulcss)
Changed in nova (Ubuntu Precise):
milestone: none → ubuntu-12.04.1
assignee: nobody → Chuck Short (zulcss)
Revision history for this message
Steve Langasek (vorlon) wrote : Please test proposed package

Hello Eric, or anyone else affected,

Accepted nova into precise-proposed. The package will build now and be available in a few hours. 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 change the bug tag from verification-needed to verification-done. If it does not, 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!

Changed in nova (Ubuntu Precise):
status: In Progress → Fix Committed
tags: added: verification-needed
Revision history for this message
Adam Gandelman (gandelman-a) wrote :

Please find the attached Jenkins job results from the Ubuntu Server Team's CI
infrastructure. As part of the verification process for this bug, Nova has
been deployed and configured across multiple nodes using precise-proposed as
an installation source. After successful bring-up and configuration of the
cluster, a number of exercises and smoke tests have be invoked to ensure the
updated package did not introduce any regressions. A number of test iterations
were carried out to catch any possible transient errors.

Note the list of installed packages at the top and bottom of the report.

For records of upstream test coverage of this update, please see the
Jenkins links in the comments of the relevant upstream code-review:

https://review.openstack.org/7298

As per the provisional Micro Release Exception granted to this package by
the Technical Board, we hope this contributes toward verification of this
update.

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

This bug was fixed in the package nova - 2012.1+stable~20120612-3ee026e-0ubuntu1

---------------
nova (2012.1+stable~20120612-3ee026e-0ubuntu1) precise-proposed; urgency=low

  * New upstream snapshot. (LP: #1010473)
  * Dropped, superseeded by new snapshot:
    - debian/patches/upstream/0001-fix-bug-where-nova-ignores-glance-host-in-imageref.patch
    - debian/patches/upstream/0002-Stop-libvirt-test-from-deleting-instances-dir.patch
    - debian/patches/upstream/0003-Allow-unprivileged-RADOS-users-to-access-rbd-volumes.patch
    - debian/patches/upstream/0004-Fixed-bug-962840-added-a-test-case.patch
    - debian/patches/upstream/0005-Populate-image-properties-with-project_id-again.patch
    - debian/patches/upstream/0006-Use-project_id-in-ec2.cloud._format_image.patc
    - debian/patches/CVE-2012-2101.patch
    - debian/patches/CVE-2012-2654.patch
  * Resynchronize with stable/essex:
    - 3ee026e Only invoke .lower() on non-None protocols. (LP: #1010514)
    - f0a9f47 Create a utf8 version of the dns_domains table. (LP: #993663)
    - 84a43e1 Report memory correctly on Xen. (LP: #997014)
    - 8c72924 Add libvirt get_console_output tests: pty and file. (LP: #990237)
    - 4e423cd Fix Multi_Scheduler to process host capabilities. (LP: #1000403)
    - 4aea7f1 Nail pep8 dependencies to 1.0.1
    - 2b3bbc4 handle updated qemu-img info output. (LP: #1000261)
    - 2d7d51c Fix type of snapshot_id column to match db. (LP: #962615)
    - ec70c69 Generate a Changelog for Nova
    - e5e890f Fix nova.tests.test_nova_rootwrap on Fedora 17. (LP: #992916)
    - 9e9a554 Ec2 handle strings with "0x" (LP: #983206)
    - 26dc6b7 QuantumManager will start dnsmasq during startup. Fixes (LP: #977759)
    - 7028d66 Introduced flag base_dir_name. (LP: #973194)
    - 76b525a Get unit tests functional in OS X.
    - facb936 Update KillFilter to handle 'deleted' exe's. (LP: #967931)
    - 1209af4 Checks if value is string or not before decode. (LP: #952176)
    - 1209af4 Fix timeout in EC2 CloudController.create_image(). (LP: #989764)
    - 108e74b Re-add console_log from console_console_output(). (LP: #987335)
    - 48a0768 Don't leak RPC connections on timeouts or other exceptions. (LP: #968843)
    - 7c64de9 Cloudpipe tap vpn not always working. (LP: #975043)
    - 5ab5051 add libvirt_inject_key flag fix (LP: #971640)
    - 6c68ef5 Xen: Pass session to destroy_vdi. (LP: #988615)
    - 015744e Delete fixed_ips when network is deleted. (LP: #754900)
  * Add debian/scripts/changelog.sh to help generate the changelog.
  * Add debian/nova-common.docs:
    - Include changelog and README.rst
  * debian/rules: Generate a tarball from git snapshot.
  * debian/patches/fix-pep8-errors.patch: Fix pep8 errors due to pep8 upstream
    migration.
 -- Chuck Short <email address hidden> Tue, 05 Jun 2012 09:50:59 -0400

Changed in nova (Ubuntu Precise):
status: Fix Committed → Fix Released
Chuck Short (zulcss)
Changed in nova (Ubuntu):
status: In Progress → Fix Released
Thierry Carrez (ttx)
Changed in nova:
milestone: folsom-1 → 2012.2
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

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