]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
Tweaking per-obj fragmentation score
authortridao <daominhtri0503@gmail.com>
Mon, 3 Jul 2023 22:28:46 +0000 (19:28 -0300)
committertridao <daominhtri0503@gmail.com>
Mon, 17 Jul 2023 02:16:20 +0000 (23:16 -0300)
Signed-off-by: Tri Dao <daominhtri0503@gmail.com>
src/test/objectstore/ObjectStoreImitator.cc
src/test/objectstore/ObjectStoreImitator.h

index f409229c1ec4fe76b506c697fe31beb2d97b388b..e366a7b7dc23ce27fe73c0d7b1973b0cb098b5ce 100644 (file)
@@ -121,12 +121,12 @@ void ObjectStoreImitator::Object::append(PExtentVector &ext, uint64_t offset) {
 }
 
 void ObjectStoreImitator::Object::verify_extents() {
-  std::cout << "Verifying extents:\n";
+  // std::cout << "Verifying extents:\n";
   uint64_t prev{0};
   for (auto &[l_off, ext] : extent_map) {
-    std::cout << "logical offset: " << l_off
-              << ", extent offset: " << ext.offset
-              << ", extent length: " << ext.length << std::endl;
+    // std::cout << "logical offset: " << l_off
+    //           << ", extent offset: " << ext.offset
+    //           << ", extent length: " << ext.length << std::endl;
 
     ceph_assert(ext.is_valid());
     ceph_assert(ext.length > 0);
@@ -176,7 +176,7 @@ void ObjectStoreImitator::print_per_object_fragmentation() {
     double coll_total{0};
     for (auto &[id, obj] : coll_ref->objects) {
       double frag_score{1};
-      unsigned i{2};
+      unsigned i{1};
       uint64_t ext_size = 0;
 
       PExtentVector extents;
index a98f5cc1c4eb86e41ff086f3a6ff4c4dfda714cc..a92f07e7a8e57e209f949a8b3500148b14c95004 100644 (file)
@@ -221,7 +221,7 @@ public:
   // Generate metrics for per-object fragmentation (how fragmented are each
   // object's extents), defined by: frag_score = 1 - sum((size proportion of
   // each extents / object size) ^ index of each extent in a vector sorted by
-  // descending length + 1). This should only be called after the  generators
+  // descending length). This should only be called after the  generators
   // are finished as it will attempt to change an object's extents.
   void print_per_object_fragmentation();