]> review.fuel-infra Code Review - openstack-build/cinder-build.git/commitdiff
Elevate acceptors context on accept reserve udpate
authorJohn Griffith <john.griffith@solidfire.com>
Tue, 4 Jun 2013 18:59:20 +0000 (12:59 -0600)
committerJohn Griffith <john.griffith@solidfire.com>
Tue, 4 Jun 2013 22:47:17 +0000 (16:47 -0600)
When accepting a transfer we need to update the
quota data for both the donor and the acceptor's.
The acceptor is easy enough (as that's the context
we currently are using) however to update the donor's
quota data we need an elevated context.

Fixes bug: 1187538

Change-Id: I1fb9e7726830dce2c3de23d3446de5bbe9a1fd24

cinder/transfer/api.py

index e139951a2287cef21e41b050688df6af71d09507..ffd049ca784bb9e15900f6fe972f826196c092a1 100644 (file)
@@ -166,7 +166,7 @@ class API(base.Base):
                 raise exception.VolumeLimitExceeded(allowed=quotas['volumes'])
         try:
             donor_id = vol_ref['project_id']
-            donor_reservations = QUOTAS.reserve(context,
+            donor_reservations = QUOTAS.reserve(context.elevated(),
                                                 project_id=donor_id,
                                                 volumes=-1,
                                                 gigabytes=-vol_ref['size'])