]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
Merge pull request #7223 from liewegas/wip-collection-handles
authorSage Weil <sage@redhat.com>
Wed, 27 Jan 2016 19:45:11 +0000 (14:45 -0500)
committerSage Weil <sage@redhat.com>
Wed, 27 Jan 2016 19:45:11 +0000 (14:45 -0500)
osd: collection handles

Reviewed-by: Casey Bodley <cbodley@redhat.com>
1  2 
src/os/ObjectStore.h
src/os/bluestore/BlueStore.cc
src/os/bluestore/BlueStore.h
src/os/memstore/MemStore.cc
src/os/memstore/MemStore.h
src/osd/OSD.cc
src/osd/PG.cc
src/osd/ReplicatedBackend.cc
src/osd/ReplicatedBackend.h

index bc5126d0ac8ffcc06936dc4da15f13bd3ca3662a,34080c9fc2a3ffd4e0b8354b369cbd5aa6639b1a..fa92061677aee59c3b8148c7723201f7c76ca847
@@@ -2172,8 -2176,13 +2251,14 @@@ public
    virtual int collection_list(coll_t c, ghobject_t start, ghobject_t end,
                              bool sort_bitwise, int max,
                              vector<ghobject_t> *ls, ghobject_t *next) = 0;
+   virtual int collection_list(CollectionHandle &c,
+                             ghobject_t start, ghobject_t end,
+                             bool sort_bitwise, int max,
+                             vector<ghobject_t> *ls, ghobject_t *next) {
+     return collection_list(c->get_cid(), start, end, sort_bitwise, max, ls, next);
+   }
  
 +
    /// OMAP
    /// Get omap contents
    virtual int omap_get(
Simple merge
index 56ca712ade7e59e952224a55cb29eb36e1a34991,3740fdbb05fe6b3b07946c9b08ab13786800a35f..a978da0eb97216c5229771e07d76759ca5df58d9
@@@ -639,14 -656,27 +659,28 @@@ public
      bufferlist& bl,
      uint32_t op_flags = 0);
  
-   int fiemap(coll_t cid, const ghobject_t& oid, uint64_t offset, size_t len, bufferlist& bl);
-   int getattr(coll_t cid, const ghobject_t& oid, const char *name, bufferptr& value);
-   int getattrs(coll_t cid, const ghobject_t& oid, map<string,bufferptr>& aset);
+   int fiemap(coll_t cid, const ghobject_t& oid,
+            uint64_t offset, size_t len, bufferlist& bl) override;
+   int fiemap(CollectionHandle &c, const ghobject_t& oid,
+            uint64_t offset, size_t len, bufferlist& bl) override;
+   int getattr(coll_t cid, const ghobject_t& oid, const char *name,
+             bufferptr& value) override;
+   int getattr(CollectionHandle &c, const ghobject_t& oid, const char *name,
+             bufferptr& value) override;
+   int getattrs(coll_t cid, const ghobject_t& oid,
+              map<string,bufferptr>& aset) override;
+   int getattrs(CollectionHandle &c, const ghobject_t& oid,
+              map<string,bufferptr>& aset) override;
+   int list_collections(vector<coll_t>& ls) override;
+   CollectionHandle open_collection(const coll_t &c) override;
  
-   int list_collections(vector<coll_t>& ls);
    bool collection_exists(coll_t c);
    bool collection_empty(coll_t c);
 +  int collection_bits(coll_t c);
  
    int collection_list(coll_t cid, ghobject_t start, ghobject_t end,
                      bool sort_bitwise, int max,
Simple merge
Simple merge
diff --cc src/osd/OSD.cc
Simple merge
diff --cc src/osd/PG.cc
Simple merge
Simple merge
Simple merge