← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1653080] [NEW] Booting from image in ceph is considered to booting from volume

 

Public bug reported:


Openstack Mitaka
glance backend: ceph
nova backend: kvm+ceph
cinder backend: ceph

Steps to reproduce
==================
1.create an instance booting from image with flavor m1.small;
2.nova resize $instance_id m1.tiny;

Actual result
=============
instance resize successfully, but instance's root disk does not change

Expected result
===============
nova-api should raise a ResizeError exception.

booted_from_volume = self._is_booted_from_volume(instance, disk_info_text)
if (root_down and not booted_from_volume) or ephemeral_down:
	reason = _("Unable to resize disk down.")
	raise exception.InstanceFaultRollback(
		exception.ResizeError(reason=reason))

I think the function "_is_booted_from_volume" is wrong:
@staticmethod
def _is_booted_from_volume(instance, disk_mapping):
	return ((not bool(instance.get('image_ref')))
			or 'disk' not in disk_mapping)

** Affects: nova
     Importance: Undecided
     Assignee: Bing Li (libing863)
         Status: New

** Changed in: nova
     Assignee: (unassigned) => Bing Li (libing863)

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

Title:
  Booting from image in ceph is considered to booting from volume

Status in OpenStack Compute (nova):
  New

Bug description:
  
  Openstack Mitaka
  glance backend: ceph
  nova backend: kvm+ceph
  cinder backend: ceph

  Steps to reproduce
  ==================
  1.create an instance booting from image with flavor m1.small;
  2.nova resize $instance_id m1.tiny;

  Actual result
  =============
  instance resize successfully, but instance's root disk does not change

  Expected result
  ===============
  nova-api should raise a ResizeError exception.

  booted_from_volume = self._is_booted_from_volume(instance, disk_info_text)
  if (root_down and not booted_from_volume) or ephemeral_down:
  	reason = _("Unable to resize disk down.")
  	raise exception.InstanceFaultRollback(
  		exception.ResizeError(reason=reason))

  I think the function "_is_booted_from_volume" is wrong:
  @staticmethod
  def _is_booted_from_volume(instance, disk_mapping):
  	return ((not bool(instance.get('image_ref')))
  			or 'disk' not in disk_mapping)

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


Follow ups