]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
osdc/ObjectCacher: clear complete on trim, release
authorSage Weil <sage@inktank.com>
Wed, 24 Oct 2012 21:36:05 +0000 (14:36 -0700)
committerSage Weil <sage@inktank.com>
Fri, 26 Oct 2012 18:31:45 +0000 (11:31 -0700)
Clear the complete flag when we are discarding buffers.

Signed-off-by: Sage Weil <sage@inktank.com>
src/osdc/ObjectCacher.cc

index 218d9dbd2f963bf35576f53266909717aaff2f9a..708fb4872f14f204baa654312c570add24b0df64 100644 (file)
@@ -841,6 +841,11 @@ void ObjectCacher::trim(loff_t max_bytes, loff_t max_ob)
     Object *ob = bh->ob;
     bh_remove(ob, bh);
     delete bh;
+
+    if (ob->complete) {
+      ldout(cct, 10) << "trim clearing complete on " << *ob << dendl;
+      ob->complete = false;
+    }
   }
 
   while (ob_lru.lru_get_size() > max_ob) {
@@ -1663,6 +1668,11 @@ loff_t ObjectCacher::release(Object *ob)
     return 0;
   }
 
+  if (ob->complete) {
+    ldout(cct, 10) << "release clearing complete on " << *ob << dendl;
+    ob->complete = false;
+  }
+
   return o_unclean;
 }