]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
os/NewStore: fix the append of the later overlays when doing combination
authorZhiqiang Wang <zhiqiang.wang@intel.com>
Wed, 29 Apr 2015 06:10:51 +0000 (14:10 +0800)
committerSage Weil <sage@redhat.com>
Tue, 1 Sep 2015 17:39:41 +0000 (13:39 -0400)
The data of the later contiguous overlays should be claim_append to
'op->data', instead of 'bl'.

Signed-off-by: Zhiqiang Wang <zhiqiang.wang@intel.com>
src/os/newstore/NewStore.cc

index bb946f288f4761b5b2b72f976a4758bfb21b17c1..8c7289a98111cb5e566552475f625070b3ae7def 100644 (file)
@@ -3220,12 +3220,12 @@ int NewStore::_do_write_all_overlays(TransContext *txc,
 
         bl_next_data.substr_of(bl_next, next->second.value_offset,
                                next->second.length);
-        bl.claim_append(bl_next_data);
+        op->data.claim_append(bl_next_data);
         op->length += next->second.length;
-       op->overlays.push_back(next->second);
+        op->overlays.push_back(next->second);
 
-       ++prev;
-       ++next;
+        ++prev;
+        ++next;
       } else {
        break;
       }