]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
Revert "osd/ReplicatedPG: For omap read ops, it should check object wether has omap"
authorSamuel Just <sjust@redhat.com>
Thu, 9 Jun 2016 17:36:39 +0000 (10:36 -0700)
committerSamuel Just <sjust@redhat.com>
Thu, 9 Jun 2016 17:36:39 +0000 (10:36 -0700)
This reverts commit 98caba1d0b4dd334748e3bcaf1bfb3f79f75eb65.

src/osd/ReplicatedPG.cc

index 2445e23c7d3a4084c726086e4a2b69b15b49d56e..e53dff66643d589debd814dd83221a66a8f69c5b 100644 (file)
@@ -5577,7 +5577,7 @@ int ReplicatedPG::do_osd_ops(OpContext *ctx, vector<OSDOp>& ops)
        tracepoint(osd, do_osd_op_pre_omapgetkeys, soid.oid.name.c_str(), soid.snap.val, start_after.c_str(), max_return);
        set<string> out_set;
 
-       if (oi.is_omap()) {
+       if (pool.info.supports_omap()) {
          ObjectMap::ObjectMapIterator iter = osd->store->get_omap_iterator(
            coll, ghobject_t(soid)
            );
@@ -5614,7 +5614,7 @@ int ReplicatedPG::do_osd_ops(OpContext *ctx, vector<OSDOp>& ops)
        tracepoint(osd, do_osd_op_pre_omapgetvals, soid.oid.name.c_str(), soid.snap.val, start_after.c_str(), max_return, filter_prefix.c_str());
        map<string, bufferlist> out_set;
 
-       if (oi.is_omap()) {
+       if (pool.info.supports_omap()) {
          ObjectMap::ObjectMapIterator iter = osd->store->get_omap_iterator(
            coll, ghobject_t(soid)
            );
@@ -5640,7 +5640,7 @@ int ReplicatedPG::do_osd_ops(OpContext *ctx, vector<OSDOp>& ops)
 
     case CEPH_OSD_OP_OMAPGETHEADER:
       tracepoint(osd, do_osd_op_pre_omapgetheader, soid.oid.name.c_str(), soid.snap.val);
-      if (!oi.is_omap()) {
+      if (!pool.info.supports_omap()) {
        // return empty header
        break;
       }
@@ -5666,7 +5666,7 @@ int ReplicatedPG::do_osd_ops(OpContext *ctx, vector<OSDOp>& ops)
        }
        tracepoint(osd, do_osd_op_pre_omapgetvalsbykeys, soid.oid.name.c_str(), soid.snap.val, list_entries(keys_to_get).c_str());
        map<string, bufferlist> out;
-       if (oi.is_omap()) {
+       if (pool.info.supports_omap()) {
          osd->store->omap_get_values(ch, ghobject_t(soid), keys_to_get, &out);
        } // else return empty omap entries
        ::encode(out, osd_op.outdata);
@@ -5696,7 +5696,7 @@ int ReplicatedPG::do_osd_ops(OpContext *ctx, vector<OSDOp>& ops)
        
        map<string, bufferlist> out;
 
-       if (oi.is_omap()) {
+       if (pool.info.supports_omap()) {
          set<string> to_get;
          for (map<string, pair<bufferlist, int> >::iterator i = assertions.begin();
               i != assertions.end();