not able to get host total memory in xen with libvirt

Bug #1004298 reported by Yun Mao on 2012-05-25
This bug affects 3 people
Affects Status Importance Assigned to Milestone
OpenStack Compute (nova)
Pádraig Brady
nova (Ubuntu)

Bug Description

in virt/libvirt/, LibvirtConnection.get_memory_mb_total() is a static method. It doesn't have self. So, the line "meminfo = self._conn.getInfo()[1] will probably fail.

Related branches

Sean Dague (sdague) wrote :

Proposed importance: high (this is a guarunteed failure)

This is probably an easy fix as it looks like all calling methods of this function don't need it to be static, so it could be transformed back to a non static method.

tags: added: low-hanging-fruit
Changed in nova:
status: New → Confirmed
Thierry Carrez (ttx) on 2012-06-07
Changed in nova:
importance: Undecided → High
tags: added: xen
Qiu Yu (unicell) wrote :

This bug is no longer valid after latest libvirt code refactoring in commit aa9a592a.

In this change, get_memory_mb_total() is no long static method in nova/virt/libvirt/

Jim Fehlig (jfehlig) wrote :

This bug does affect stable/essex. Commit 5b93a576 was backported to this branch but a fix for it, commit 78352b98, was not.

Jim Fehlig (jfehlig) wrote :

I cherry-picked 78352b98 and submitted a review for stable/essex

Mark McLoughlin (markmc) wrote :
Changed in nova:
status: Confirmed → Fix Committed
assignee: nobody → Pádraig Brady (p-draigbrady)
status: Fix Committed → Fix Released
Mark McLoughlin (markmc) wrote :

Was in folsom-2

Submitter: Jenkins
Branch: stable/essex

commit 835ba4f23eb32c69aaeb1da590a297565b60388d
Author: Pádraig Brady <email address hidden>
Date: Mon Jun 25 16:48:24 2012 +0100

    fix libvirt get_memory_mb_total() with xen

    Fixes bug 1004298 in stable/essex.

    Commit 5b93a576 failed to remove the 'staticmethod'
    decorator from the method, to allow it to access
    object variables.

    Also there is no need to have the libvirt getInfo() call
    be xen specific. In the LXC/QEMU/UML drivers this call
    uses GNULIB's physmem module, which is cross-OS portable.

    Change-Id: I565eda78f6c468cf6bd227756cfc068725069218
    (cherry picked from commit 78352b98a96946145bec9010872d8f2769691ac2)

Dave Walker (davewalker) on 2012-08-24
Changed in nova (Ubuntu):
status: New → Fix Released
Changed in nova (Ubuntu Precise):
status: New → Confirmed

Please find the attached test log 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.

Please 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(s):

Stable review:

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

Adam Gandelman (gandelman-a) wrote :

Test coverage log.

tags: added: verification-done
Launchpad Janitor (janitor) wrote :
Download full text (5.4 KiB)

This bug was fixed in the package nova - 2012.1.3+stable-20120827-4d2a4afe-0ubuntu1

nova (2012.1.3+stable-20120827-4d2a4afe-0ubuntu1) precise-proposed; urgency=low

  * New upstream snapshot, fixes FTBFS in -proposed. (LP: #1041120)
  * Resynchronize with stable/essex (4d2a4afe):
    - [5d63601] Inappropriate exception handling on kvm live/block migration
      (LP: #917615)
    - [ae280ca] Deleted floating ips can cause instance delete to fail
      (LP: #1038266)

nova (2012.1.3+stable-20120824-86fb7362-0ubuntu1) precise-proposed; urgency=low

  * New upstream snapshot. (LP: #1041120)
  * Dropped, superseded by new snapshot:
    - debian/patches/CVE-2012-3447.patch: [d9577ce]
    - debian/patches/CVE-2012-3371.patch: [25f5bd3]
    - debian/patches/CVE-2012-3360+3361.patch: [b0feaff]
  * Resynchronize with stable/essex (86fb7362):
    - [86fb736] Libvirt driver reports incorrect error when volume-detach fails
      (LP: #1029463)
    - [272b98d] nova delete lxc-instance umounts the wrong rootfs (LP: #971621)
    - [09217ab] Block storage connections are NOT restored on system reboot
      (LP: #1036902)
    - [d9577ce] CVE-2012-3361 not fully addressed (LP: #1031311)
    - [e8ef050] pycrypto is unused and the existing code is potentially insecure
      to use (LP: #1033178)
    - [3b4ac31] cannot umount guestfs (LP: #1013689)
    - [f8255f3] qpid_heartbeat setting in ineffective (LP: #1030430)
    - [413c641] Deallocation of fixed IP occurs before security group refresh
      leading to potential security issue in error / race conditions
      (LP: #1021352)
    - [219c5ca] Race condition in network/deallocate_for_instance() leads to
      security issue (LP: #1021340)
    - [f2bc403] cleanup_file_locks does not remove stale sentinel files
      (LP: #1018586)
    - [4c7d671] Deleting Flavor currently in use by instance creates error
      (LP: #994935)
    - [7e88e39] nova testsuite errors on newer versions of python-boto (e.g.
      2.5.2) (LP: #1027984)
    - [80d3026] NoMoreFloatingIps: Zero floating ips available after repeatedly
      creating and destroying instances over time (LP: #1017418)
    - [4d74631] Launching with source groups under load produces lazy load error
      (LP: #1018721)
    - [08e5128] API 'v1.1/{tenant_id}/os-hosts' does not return a list of hosts
      (LP: #1014925)
    - [801b94a] Restarting nova-compute removes ip packet filters (LP: #1027105)
    - [f6d1f55] instance live migration should create virtual_size disk image
      (LP: #977007)
    - [4b89b4f] [nova][volumes] Exceeding volumes, gigabytes and floating_ips
      quotas returns general uninformative HTTP 500 error (LP: #1021373)
    - [6e873bc] [nova][volumes] Exceeding volumes, gigabytes and floating_ips
      quotas returns general uninformative HTTP 500 error (LP: #1021373)
    - [7b215ed] Use default qemu-img cluster size in libvirt connection driver
    - [d3a87a2] Listing flavors with marker set returns 400 (LP: #956096)
    - [cf6a85a] nova-rootwrap hardcodes paths instead of using
      /sbin:/usr/sbin:/usr/bin:/bin (LP: #1013147)
    - [2efc87c] affinity filters don't work if scheduler_hints is None
      (LP: #1007573)


Changed in nova (Ubuntu Precise):
status: Confirmed → Fix Released

The verification of this Stable Release Update 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 regresssions.

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Duplicates of this bug

Other bug subscribers