Comment 0 for bug 1793137

Revision history for this message
Alex Kavanagh (ajkavanagh) wrote : Fix for KeyError: 'storage.zfs_pool_name' only partially successful -- needs changes

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.