[SRU] Fix for KeyError: 'storage.zfs_pool_name' only partially successful -- needs changes

Bug #1793137 reported by Alex Kavanagh
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
LXD Charm
Fix Released
Critical
Alex Kavanagh
Ubuntu Cloud Archive
Won't Fix
High
Unassigned
Queens
Won't Fix
High
Unassigned
Rocky
Won't Fix
High
Unassigned
nova-lxd
Won't Fix
Undecided
Unassigned
nova-lxd (Ubuntu)
Won't Fix
High
Unassigned
Bionic
Won't Fix
High
Unassigned
Cosmic
Won't Fix
High
Unassigned

Bug Description

[Impact]

The issue is that the fix was only partially successful, in that whilst it avoids the 'storage.zfs_pool_name', the other branch of code doesn't get the zfs pool name, but instead the lxd pool name; if they are different then it fails.

The LXD charm used different names (it's now being patched to use the same name for the lxd pool and zfs pool), which broke nova-lxd on bionic.

The code in question is in nova/virt/lxd/driver.py in get_available_resource(self, nodename) around line 1057:

            try:
                pool_name = lxd_config['config']['storage.zfs_pool_name']
            except KeyError:
                pool_name = CONF.lxd.pool
            local_disk_info = _get_zpool_info(pool_name)

i.e. storage.zfs_pool_name vs CONF.lxd.pool

When nova-lxd is properly refactored for storage pools, this issue should be resolved.

[Test Case]

[Regression Potential]

[Discussion]

Changed in charm-lxd:
assignee: nobody → Alex Kavanagh (ajkavanagh)
importance: Undecided → Critical
status: New → In Progress
Changed in nova-lxd (Ubuntu Bionic):
status: New → Triaged
Changed in nova-lxd (Ubuntu Cosmic):
status: New → Triaged
Changed in nova-lxd (Ubuntu Bionic):
importance: Undecided → High
Changed in nova-lxd (Ubuntu Cosmic):
importance: Undecided → High
summary: - Fix for KeyError: 'storage.zfs_pool_name' only partially successful --
- needs changes
+ [SRU] Fix for KeyError: 'storage.zfs_pool_name' only partially
+ successful -- needs changes
description: updated
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Related fix merged to charm-lxd (master)

Reviewed: https://review.openstack.org/583499
Committed: https://git.openstack.org/cgit/openstack/charm-lxd/commit/?id=4d7b3e924008af878b0c369c1bd3e92238d51a93
Submitter: Zuul
Branch: master

commit 4d7b3e924008af878b0c369c1bd3e92238d51a93
Author: Chris MacNaughton <email address hidden>
Date: Wed Jul 18 10:21:03 2018 +0200

    Remove old nova-compute / mysql relation and patch for nova-lxd bug

    This review is modified to include a patch to resolve bug #1793137
    which is due to a bug in nova-lxd where the wrong pool name (lxd) is
    used with zfs if lxd is new enough that the storage.zfs_pool_name key
    is missing from the config. This is the case on bionic and snap
    installed lxd.

    Closes-Bug: #1713807
    Related-Bug: #1793137
    Change-Id: I1123d9882bdb00e9183424b363fc3d1ff25f2346

Revision history for this message
Alex Kavanagh (ajkavanagh) wrote :

Note that the LXD charm change is a workaround to the nova-lxd bug. The nova-lxd bug still needs to be fixed so that the LXD pool name can be different to the ZFS pool name.

Changed in charm-lxd:
status: In Progress → Fix Committed
David Ames (thedac)
Changed in charm-lxd:
milestone: none → 19.04
David Ames (thedac)
Changed in charm-lxd:
status: Fix Committed → Fix Released
Changed in nova-lxd:
status: New → Won't Fix
Changed in cloud-archive:
status: Triaged → Won't Fix
Changed in nova-lxd (Ubuntu):
status: Triaged → Won't Fix
Changed in nova-lxd (Ubuntu Cosmic):
status: Triaged → Won't Fix
Changed in nova-lxd (Ubuntu Bionic):
status: Triaged → Won't Fix
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.