From e9407a373a4991f7cc2bd549b82a749e9f0f1e6b Mon Sep 17 00:00:00 2001 From: Sage Weil Date: Fri, 16 Sep 2016 11:05:52 -0400 Subject: [PATCH] os/bluestore: do not dup Blob::id in dup() This field is local to a particular onode! Signed-off-by: Sage Weil --- src/os/bluestore/BlueStore.cc | 2 ++ src/os/bluestore/BlueStore.h | 1 - 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/src/os/bluestore/BlueStore.cc b/src/os/bluestore/BlueStore.cc index 8e3e042ec666f..5676d873f4d9e 100644 --- a/src/os/bluestore/BlueStore.cc +++ b/src/os/bluestore/BlueStore.cc @@ -1487,6 +1487,7 @@ void BlueStore::ExtentMap::reshard(Onode *o) while (p != spanning_blob_map.end()) { auto n = spanning_blob_map.erase(p); p->id = -1; + dout(30) << __func__ << " un-spanning " << *p << dendl; p->put(); p = n; } @@ -1521,6 +1522,7 @@ void BlueStore::ExtentMap::reshard(Onode *o) vector new_shard_info; while (ep != extent_map.end()) { dout(30) << " ep " << *ep << dendl; + assert(!ep->blob->is_spanning()); if (shard_end == 0 || ep->logical_offset >= shard_end) { if (sp == esp) { diff --git a/src/os/bluestore/BlueStore.h b/src/os/bluestore/BlueStore.h index b02cd0e93b5b9..070457392929e 100644 --- a/src/os/bluestore/BlueStore.h +++ b/src/os/bluestore/BlueStore.h @@ -424,7 +424,6 @@ public: } void dup(Blob& o) { - o.id = id; o.shared_blob = shared_blob; o.blob = blob; o.dirty = dirty; -- 2.39.5