]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
osd/: add MSG_OSD_PG_(BACKFILL|BACKFILL_REMOVE|SCAN) as recovery messages
authorSamuel Just <sjust@redhat.com>
Thu, 6 Apr 2023 05:57:48 +0000 (22:57 -0700)
committerSridhar Seshasayee <sseshasa@redhat.com>
Mon, 8 May 2023 09:16:25 +0000 (14:46 +0530)
commit885241d1a4d8af5963368cd66ff0546d722efd47
tree3527ae8d356ac72d1cacd879af33afc6a84c603f
parent4b83cd20f7f3cbc0152ee9794d58d9e815120432
osd/: add MSG_OSD_PG_(BACKFILL|BACKFILL_REMOVE|SCAN) as recovery messages

Otherwise, these end up as PGOpItem and therefore as immediate:

class PGOpItem : public PGOpQueueable {
...
  op_scheduler_class get_scheduler_class() const final {
    auto type = op->get_req()->get_type();
    if (type == CEPH_MSG_OSD_OP ||
  type == CEPH_MSG_OSD_BACKOFF) {
      return op_scheduler_class::client;
    } else {
      return op_scheduler_class::immediate;
    }
  }
...
};

This was probably causing a bunch of extra interference with client
ops.

Signed-off-by: Samuel Just <sjust@redhat.com>
src/osd/PrimaryLogPG.cc
src/osd/scheduler/OpSchedulerItem.h