]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commitdiff
rgw: update quota is inconsistent at add/del object with compression
authorfang yuxiang <fang.yuxiang@eisoo.com>
Thu, 4 Jan 2018 03:45:48 +0000 (11:45 +0800)
committerfang yuxiang <fang.yuxiang@eisoo.com>
Fri, 5 Jan 2018 06:10:58 +0000 (14:10 +0800)
Fixes: http://tracker.ceph.com/issues/22568
Signed-off-by: fang yuxiang fang.yuxiang@eisoo.com
src/rgw/rgw_rados.cc

index 96af0ab9d1502ae1838b887b0e5602fc0632680d..3db13fa3d9155555ceb80055fa51318781613647 100644 (file)
@@ -8856,7 +8856,7 @@ int RGWRados::Object::Delete::delete_obj()
     /* only delete object if mtime is less than or equal to params.unmod_since */
     store->cls_obj_check_mtime(op, params.unmod_since, params.high_precision_time, CLS_RGW_CHECK_TIME_MTIME_LE);
   }
-  uint64_t obj_size = state->size;
+  uint64_t obj_accounted_size = state->accounted_size;
 
   if (!real_clock::is_zero(params.expiration_time)) {
     bufferlist bl;
@@ -8938,7 +8938,7 @@ int RGWRados::Object::Delete::delete_obj()
     return r;
 
   /* update quota cache */
-  store->quota_handler->update_stats(params.bucket_owner, obj.bucket, -1, 0, obj_size);
+  store->quota_handler->update_stats(params.bucket_owner, obj.bucket, -1, 0, obj_accounted_size);
 
   return 0;
 }