← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1623497] [NEW] Booting Ceph instance using Ceph glance doesn't resize root disk to flavor size

 

Public bug reported:

This bug is purely from code inspection; I haven't replicated it on a
running system.

Change I46b5658efafe558dd6b28c9910fb8fde830adec0 added a resize check
that the backing file exists before checking its size. Unfortunately we
forgot that Rbd overrides get_disk_size(path), and ignores the path
argument, which means it would previously not have failed even when the
given path didn't exist. Additionally, the callback function passed to
cache() by driver will also ignore its path argument, and therefore not
write to the image cache, when cloning to a ceph instance from a ceph
glance store (see the section starting if backend.SUPPORTS_CLONE in
driver._create_and_inject_local_root). Consequently, when creating a
ceph instance using a ceph glance store:

1. 'base' will not exist in the image cache
2. get_disk_size(base) will return the correct value anyway

We broke this with change I46b5658efafe558dd6b28c9910fb8fde830adec0.

** Affects: nova
     Importance: Undecided
         Status: New


** Tags: newton-rc-potential

** Tags added: newton-rc-potential

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Compute (nova).
https://bugs.launchpad.net/bugs/1623497

Title:
  Booting Ceph instance using Ceph glance doesn't resize root disk to
  flavor size

Status in OpenStack Compute (nova):
  New

Bug description:
  This bug is purely from code inspection; I haven't replicated it on a
  running system.

  Change I46b5658efafe558dd6b28c9910fb8fde830adec0 added a resize check
  that the backing file exists before checking its size. Unfortunately
  we forgot that Rbd overrides get_disk_size(path), and ignores the path
  argument, which means it would previously not have failed even when
  the given path didn't exist. Additionally, the callback function
  passed to cache() by driver will also ignore its path argument, and
  therefore not write to the image cache, when cloning to a ceph
  instance from a ceph glance store (see the section starting if
  backend.SUPPORTS_CLONE in driver._create_and_inject_local_root).
  Consequently, when creating a ceph instance using a ceph glance store:

  1. 'base' will not exist in the image cache
  2. get_disk_size(base) will return the correct value anyway

  We broke this with change I46b5658efafe558dd6b28c9910fb8fde830adec0.

To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/1623497/+subscriptions