]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
ceph_objectstore_tool: Fixes to make import work again
authorDavid Zafman <dzafman@redhat.com>
Wed, 12 Nov 2014 23:22:04 +0000 (15:22 -0800)
committerDavid Zafman <dzafman@redhat.com>
Tue, 3 Mar 2015 18:44:17 +0000 (10:44 -0800)
The is_pg() call is now true even for pgs pending removal, fix broken
    finish_remove_pgs() by removing is_pg() check.
Need to add create_collection() to the initial transaction on import

Fixes: #10090
Signed-off-by: David Zafman <dzafman@redhat.com>
Reviewed-by: Sage Weil <sage@redhat.com>
(cherry picked from commit 5ce09198bf475e5c3a2df26232fa04ba9912b103)

Conflicts:
src/tools/ceph_objectstore_tool.cc

src/tools/ceph_objectstore_tool.cc

index ea4411cd151703d480ebc227cab788436518ff05..e3d4bc3992743045475181f880bf512a4778b019 100644 (file)
@@ -507,7 +507,6 @@ int finish_remove_pgs(ObjectStore *store, uint64_t *next_removal_seq)
        it != ls.end();
        ++it) {
     spg_t pgid;
-    snapid_t snap;
 
     if (it->is_temp(pgid)) {
       cout << "finish_remove_pgs " << *it << " clearing temp" << std::endl;
@@ -515,10 +514,6 @@ int finish_remove_pgs(ObjectStore *store, uint64_t *next_removal_seq)
       continue;
     }
 
-    if (it->is_pg(pgid, snap)) {
-      continue;
-    }
-
     uint64_t seq;
     if (it->is_removal(&seq, &pgid)) {
       if (seq >= *next_removal_seq)