From d030c5b10e9e8d73d967562259e7db6146347108 Mon Sep 17 00:00:00 2001 From: Adam Gandelman Date: Tue, 27 Nov 2012 17:51:26 -0800 Subject: [PATCH] Improve provider_location cleanup code for RBD. The RBD driver does not make use of the 'provider_location' field but the current cleanup code assumes it does. Ensure the field is in use before testing whether or not it needs fixing. Fixes bug 1083818. Change-Id: Id6ff85101f85e70575ba244c2df7aca0196cf224 --- cinder/volume/manager.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/cinder/volume/manager.py b/cinder/volume/manager.py index 666c147c1..1244f6f4b 100644 --- a/cinder/volume/manager.py +++ b/cinder/volume/manager.py @@ -374,7 +374,8 @@ class VolumeManager(manager.SchedulerDependentManager): # Check for https://bugs.launchpad.net/cinder/+bug/1065702 volume_ref = self.db.volume_get(context, volume_id) - if volume_ref['name'] not in volume_ref['provider_location']: + if (volume_ref['provider_location'] and + volume_ref['name'] not in volume_ref['provider_location']): self.driver.ensure_export(context, volume_ref) def _copy_image_to_volume(self, context, volume, image_id): -- 2.45.2