During the volume retype operation which has glance_metadata, the retype operation was failed with ObjectActionError.
This error happend via volume.save().
$ cinder create --name volboot --image-id a8701119-ca8d-4957-846c-9f4d27f251fa --volume-type lvmdriver-1 1
$ cinder list
+--------------------------------------+-----------+---------+------+-------------+----------+-------------+
| ID | Status | Name | Size | Volume Type | Bootable | Attached to |
+--------------------------------------+-----------+---------+------+-------------+----------+-------------+
| f17fec2a-ef29-4d1f-9afd-f36585c8bf65 | available | volboot | 1 | lvmdriver-1 | true | |
+--------------------------------------+-----------+---------+------+-------------+----------+-------------+
$ cinder extra-specs-list
+--------------------------------------+-------------+-------------------------------------------+
| ID | Name | extra_specs |
+--------------------------------------+-------------+-------------------------------------------+
| 0726e096-1960-490c-9445-c5891f09adcc | lvmdriver-1 | {u'volume_backend_name': u'lvmdriver-1'} |
| 113d5b7a-590a-4a9a-b1a7-fb354f66f573 | lvmdriver-2 | {u'volume_backend_name': u'lvmdriver-1'} |
| a0391cf4-7c05-4694-b711-0220f8519d41 | lvm_n2 | {u'volume_backend_name': u'lvmdriver-n2'} |
+--------------------------------------+-------------+-------------------------------------------+
$ cinder retype f17fec2a-ef29-4d1f-9afd-f36585c8bf65 lvmdriver-2
Error log
-----------------------------
2016-02-15 15:15:48.859 ERROR oslo_messaging.rpc.dispatcher [req-4a6ad78a-aa97-4982-876e-5381f4eba8b1 9a125f3d111e47e6a25f573853b32fd9 4c0dbc92040c41b1bdb3827653682952] Exception during message handling: Object action save failed because: glance_metadata changed
2016-02-15 15:15:48.859 TRACE oslo_messaging.rpc.dispatcher Traceback (most recent call last):
2016-02-15 15:15:48.859 TRACE oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/site-packages/oslo_messaging/rpc/dispatcher.py", line 143, in _dispatch_and_reply
2016-02-15 15:15:48.859 TRACE oslo_messaging.rpc.dispatcher executor_callback))
2016-02-15 15:15:48.859 TRACE oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/site-packages/oslo_messaging/rpc/dispatcher.py", line 189, in _dispatch
2016-02-15 15:15:48.859 TRACE oslo_messaging.rpc.dispatcher executor_callback)
2016-02-15 15:15:48.859 TRACE oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/site-packages/oslo_messaging/rpc/dispatcher.py", line 130, in _do_dispatch
2016-02-15 15:15:48.859 TRACE oslo_messaging.rpc.dispatcher result = func(ctxt, **new_args)
2016-02-15 15:15:48.859 TRACE oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/site-packages/osprofiler/profiler.py", line 109, in wrapper
2016-02-15 15:15:48.859 TRACE oslo_messaging.rpc.dispatcher return f(*args, **kwargs)
2016-02-15 15:15:48.859 TRACE oslo_messaging.rpc.dispatcher File "/opt/stack/cinder/cinder/volume/manager.py", line 2251, in retype
2016-02-15 15:15:48.859 TRACE oslo_messaging.rpc.dispatcher volume.save()
2016-02-15 15:15:48.859 TRACE oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/site-packages/oslo_versionedobjects/base.py", line 221, in wrapper
2016-02-15 15:15:48.859 TRACE oslo_messaging.rpc.dispatcher return fn(self, *args, **kwargs)
2016-02-15 15:15:48.859 TRACE oslo_messaging.rpc.dispatcher File "/opt/stack/cinder/cinder/objects/volume.py", line 298, in save
2016-02-15 15:15:48.859 TRACE oslo_messaging.rpc.dispatcher action='save', reason=_('glance_metadata changed'))
2016-02-15 15:15:48.859 TRACE oslo_messaging.rpc.dispatcher ObjectActionError: Object action save failed because: glance_metadata changed
2016-02-15 15:15:48.859 TRACE oslo_messaging.rpc.dispatcher
This issue looks related to https:/ /bugs.launchpad .net/cinder/ +bug/1538926