From: SrinivasaBharathKanta <61141011+SrinivasaBharath@users.noreply.github.com> Date: Mon, 4 Nov 2024 07:47:40 +0000 (+0530) Subject: Merge pull request #59629 from sseshasa/wip-66422-reef X-Git-Tag: testing/wip-mchangir-testing-20241122.051535-debug~32 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=6af2bc14010c491137eb5f5986f05312767d6ed1;p=ceph-ci.git Merge pull request #59629 from sseshasa/wip-66422-reef reef: osd/scrub: Change scrub cost to average object size --- 6af2bc14010c491137eb5f5986f05312767d6ed1 diff --cc src/osd/OSD.cc index b61e7c09d8d,b3fdc6437e0..d727cbddced --- a/src/osd/OSD.cc +++ b/src/osd/OSD.cc @@@ -1913,19 -1919,12 +1928,19 @@@ void OSDService::queue_scrub_is_finishe void OSDService::queue_scrub_next_chunk(PG *pg, Scrub::scrub_prio_t with_priority) { // Resulting scrub event: 'NextChunk' - queue_scrub_event_msg(pg, with_priority); + queue_scrub_event_msg_default_cost(pg, with_priority); } -void OSDService::queue_for_pg_delete(spg_t pgid, epoch_t e) +void OSDService::queue_for_pg_delete(spg_t pgid, epoch_t e, int64_t num_objects) { dout(10) << __func__ << " on " << pgid << " e " << e << dendl; + uint64_t cost_for_queue = [this, num_objects] { + if (op_queue_type_t::mClockScheduler == osd->osd_op_queue_type()) { + return num_objects * cct->_conf->osd_pg_delete_cost; + } else { + return cct->_conf->osd_pg_delete_cost; + } + }(); enqueue_back( OpSchedulerItem( unique_ptr(