]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commitdiff
crimson/osd: ignore CEPH_OSD_OP_TMAPUP like ceph-osd does for EC pools.
authorRadoslaw Zarzynski <rzarzyns@redhat.com>
Mon, 26 Aug 2019 18:29:47 +0000 (20:29 +0200)
committerRadoslaw Zarzynski <rzarzyns@redhat.com>
Fri, 13 Sep 2019 17:32:39 +0000 (19:32 +0200)
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
src/crimson/osd/ops_executer.cc
src/crimson/osd/ops_executer.h

index 56065d38b1bf41e7ea48adaf53707cd4a0cb39b2..f3fe175cb3b2747754a24bafb534cd86b1a1da0e 100644 (file)
@@ -401,6 +401,11 @@ OpsExecuter::do_osd_op(OSDOp& osd_op)
     return do_const_op([&osd_op] (/* const */auto& backend, const auto& os) {
       return backend.stat(os, osd_op);
     });
+  case CEPH_OSD_OP_TMAPUP:
+    // TODO: there was an effort to kill TMAP in ceph-osd. According to
+    // @dzafman this isn't possible yet. Maybe it could be accomplished
+    // before crimson's readiness and we'd luckily don't need to carry.
+    return dont_do_legacy_op();
   default:
     logger().warn("unknown op {}", ceph_osd_op_name(op.op));
     throw std::runtime_error(
index f1ea36713f0d08db8880048a2870f73e72f4b51e..d4b0b66a6d4714840196a35f8a41ecd36d1e3a00 100644 (file)
@@ -27,6 +27,7 @@
 
 #include "crimson/osd/pg.h"
 #include "crimson/osd/pg_backend.h"
+#include "crimson/osd/exceptions.h"
 
 class PGLSFilter;
 class OSDOp;
@@ -88,6 +89,10 @@ class OpsExecuter {
                                  std::as_const(os->oi.soid.get_namespace()));
   }
 
+  seastar::future<> dont_do_legacy_op() {
+    throw ceph::osd::operation_not_supported();
+  }
+
 public:
   OpsExecuter(PGBackend::cached_os_t os, PG& pg)
     : os(std::move(os)), pg(pg), backend(pg.get_backend()) {