]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
test/objectstore/TestObjectStoreState: make objects match collection 20173/head
authorSage Weil <sage@redhat.com>
Mon, 5 Feb 2018 17:59:09 +0000 (11:59 -0600)
committerSage Weil <sage@redhat.com>
Tue, 6 Feb 2018 20:09:31 +0000 (14:09 -0600)
- start pool at 1
- make hash fall within pg (just match it for now)

Signed-off-by: Sage Weil <sage@redhat.com>
src/test/objectstore/DeterministicOpSequence.cc
src/test/objectstore/FileStoreDiff.cc
src/test/objectstore/TestObjectStoreState.cc
src/test/objectstore/TestObjectStoreState.h

index 8f4cb49481c1dfb2c00b78f2b6072dc1d3ab4d7a..6e59b502ffba414460f0cdf6a7d8dc067f67ee68 100644 (file)
@@ -380,7 +380,7 @@ bool DeterministicOpSequence::do_coll_move(rngen_t& gen)
 bool DeterministicOpSequence::do_coll_create(rngen_t& gen)
 {
   int i = m_collections.size();
-  spg_t pgid(pg_t(i, 0), shard_id_t::NO_SHARD);
+  spg_t pgid(pg_t(i, 1), shard_id_t::NO_SHARD);
   coll_t cid(pgid);
   auto ch = m_store->create_new_collection(cid);
   coll_entry_t *entry = coll_create(pgid, ch);
index c8126cf81ebb13c602fe905f441b58096f3f40b6..e68485701102fc010655ab715cfdb52ac90ad49b 100644 (file)
@@ -153,9 +153,11 @@ bool FileStoreDiff::diff_objects(FileStore *a_store, FileStore *b_store, coll_t
   }
 
   if (b_objects.size() != a_objects.size()) {
-    cout << "diff_objects num objs mismatch (A: " << a_objects.size()
+    cout << "diff_objects " << coll << " num objs mismatch (A: " << a_objects.size()
         << ", B: " << b_objects.size() << ")" << std::endl;
     ret = true;
+    cout << "a: " << a_objects << std::endl;
+    cout << "b: " << b_objects << std::endl;
   }
 
   auto a_ch = a_store->open_collection(coll);
index 79c9c30f5c21ddcaf585ab616b56cd9db6b57c4e..f52bfb5b738abf3726c52fe3c7f22793cc5df070 100644 (file)
@@ -43,7 +43,7 @@ void TestObjectStoreState::init(int colls, int objs)
 
   int baseid = 0;
   for (int i = 0; i < colls; i++) {
-    spg_t pgid(pg_t(i, 0), shard_id_t::NO_SHARD);
+    spg_t pgid(pg_t(i, 1), shard_id_t::NO_SHARD);
     coll_t cid(pgid);
     auto ch = m_store->create_new_collection(cid);
     coll_entry_t *entry = coll_create(pgid, ch);
@@ -181,6 +181,8 @@ hobject_t *TestObjectStoreState::coll_entry_t::touch_obj(int id)
   snprintf(buf, 100, "obj%d", id);
 
   hobject_t *obj = new hobject_t(sobject_t(object_t(buf), CEPH_NOSNAP));
+  obj->set_hash(m_pgid.ps());
+  obj->pool = m_pgid.pool();
   m_objects.insert(make_pair(id, obj));
 
   dout(5) << "touch_obj coll id " << m_cid << " name " << buf << dendl;
index 30d65cb45dc85eb2f42c2a9d1002183246d32778..0d07bc2249b0d0b7f1bf9b40cd5f664eb745e018 100644 (file)
@@ -39,6 +39,8 @@ public:
        m_meta_obj(hobject_t(sobject_t(object_t(meta_obj_buf), CEPH_NOSNAP))),
        m_ch(ch),
        m_next_object_id(0) {
+      m_meta_obj.hobj.pool = m_pgid.pool();
+      m_meta_obj.hobj.set_hash(m_pgid.ps());
     }
     ~coll_entry_t();