]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
osd/PrimarLogPG: remove jewel compat for error code logging
authorSage Weil <sage@redhat.com>
Tue, 5 Dec 2017 19:07:08 +0000 (13:07 -0600)
committerSage Weil <sage@redhat.com>
Mon, 11 Dec 2017 21:05:38 +0000 (15:05 -0600)
Signed-off-by: Sage Weil <sage@redhat.com>
src/osd/PrimaryLogPG.cc

index 0c94745e5133baabc4ca25df6480833f2105749a..860e0db69e0f90c5e08a8dc1cd1f4e14415aa652 100644 (file)
@@ -10054,67 +10054,40 @@ void PrimaryLogPG::submit_log_entries(
            peer.osd, m, get_osdmap()->get_epoch());
        }
       }
-      if (get_osdmap()->require_osd_release >= CEPH_RELEASE_JEWEL) {
-       ceph_tid_t rep_tid = repop->rep_tid;
-       waiting_on.insert(pg_whoami);
-       log_entry_update_waiting_on.insert(
-         make_pair(
-           rep_tid,
-           LogUpdateCtx{std::move(repop), std::move(waiting_on)}
-           ));
-       struct OnComplete : public Context {
-         PrimaryLogPGRef pg;
-         ceph_tid_t rep_tid;
-         epoch_t epoch;
-         OnComplete(
-           PrimaryLogPGRef pg,
-           ceph_tid_t rep_tid,
-           epoch_t epoch)
-           : pg(pg), rep_tid(rep_tid), epoch(epoch) {}
-         void finish(int) override {
-           pg->lock();
-           if (!pg->pg_has_reset_since(epoch)) {
-             auto it = pg->log_entry_update_waiting_on.find(rep_tid);
-             assert(it != pg->log_entry_update_waiting_on.end());
-             auto it2 = it->second.waiting_on.find(pg->pg_whoami);
-             assert(it2 != it->second.waiting_on.end());
-             it->second.waiting_on.erase(it2);
-             if (it->second.waiting_on.empty()) {
-               pg->repop_all_committed(it->second.repop.get());
-               pg->log_entry_update_waiting_on.erase(it);
-             }
+      ceph_tid_t rep_tid = repop->rep_tid;
+      waiting_on.insert(pg_whoami);
+      log_entry_update_waiting_on.insert(
+       make_pair(
+         rep_tid,
+         LogUpdateCtx{std::move(repop), std::move(waiting_on)}
+         ));
+      struct OnComplete : public Context {
+       PrimaryLogPGRef pg;
+       ceph_tid_t rep_tid;
+       epoch_t epoch;
+       OnComplete(
+         PrimaryLogPGRef pg,
+         ceph_tid_t rep_tid,
+         epoch_t epoch)
+         : pg(pg), rep_tid(rep_tid), epoch(epoch) {}
+       void finish(int) override {
+         pg->lock();
+         if (!pg->pg_has_reset_since(epoch)) {
+           auto it = pg->log_entry_update_waiting_on.find(rep_tid);
+           assert(it != pg->log_entry_update_waiting_on.end());
+           auto it2 = it->second.waiting_on.find(pg->pg_whoami);
+           assert(it2 != it->second.waiting_on.end());
+           it->second.waiting_on.erase(it2);
+           if (it->second.waiting_on.empty()) {
+             pg->repop_all_committed(it->second.repop.get());
+             pg->log_entry_update_waiting_on.erase(it);
            }
-           pg->unlock();
          }
-       };
-       t.register_on_commit(
-         new OnComplete{this, rep_tid, get_osdmap()->get_epoch()});
-      } else {
-       if (on_complete) {
-         struct OnComplete : public Context {
-           PrimaryLogPGRef pg;
-           std::function<void(void)> on_complete;
-           epoch_t epoch;
-           OnComplete(
-             PrimaryLogPGRef pg,
-             const std::function<void(void)> &on_complete,
-             epoch_t epoch)
-             : pg(pg),
-               on_complete(std::move(on_complete)),
-               epoch(epoch) {}
-           void finish(int) override {
-             pg->lock();
-             if (!pg->pg_has_reset_since(epoch))
-               on_complete();
-             pg->unlock();
-           }
-         };
-         t.register_on_complete(
-           new OnComplete{
-             this, *on_complete, get_osdmap()->get_epoch()
-               });
+         pg->unlock();
        }
-      }
+      };
+      t.register_on_commit(
+       new OnComplete{this, rep_tid, get_osdmap()->get_epoch()});
       t.register_on_applied(
        new C_OSD_OnApplied{this, get_osdmap()->get_epoch(), info.last_update});
       int r = osd->store->queue_transaction(osr.get(), std::move(t), NULL);