]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
osd: Add interface for new EC to determine the acting recovery backfill shard id...
authorAlex Ainscow <aainscow@uk.ibm.com>
Thu, 27 Mar 2025 14:57:27 +0000 (14:57 +0000)
committerAlex Ainscow <aainscow@uk.ibm.com>
Tue, 22 Apr 2025 07:38:15 +0000 (08:38 +0100)
This is used to optimise the set of shards that will be written to by
EC writes.

Signed-off-by: Alex Ainscow <aainscow@uk.ibm.com>
src/osd/ECListener.h
src/osd/PrimaryLogPG.h

index 39602dcd064da117de690c6cd50fb781d9536e92..76fd03c6d6625d6d592dea6661bc55328345541d 100644 (file)
@@ -148,6 +148,7 @@ struct ECListener {
   // RMWPipeline
   virtual const pg_pool_t &get_pool() const = 0;
   virtual const std::set<pg_shard_t> &get_acting_recovery_backfill_shards() const = 0;
+  virtual const shard_id_set &get_acting_recovery_backfill_shard_id_set() const = 0;
   // XXX
   virtual bool should_send_op(
     pg_shard_t peer,
index 94c0b13b5141d661ac19e65695e07d3c7ad57417..b365cf29457016405f72d60f30de83ce5361e955 100644 (file)
@@ -392,6 +392,9 @@ public:
   const std::set<pg_shard_t> &get_acting_recovery_backfill_shards() const override {
     return get_acting_recovery_backfill();
   }
+  const shard_id_set &get_acting_recovery_backfill_shard_id_set() const override {
+    return PG::get_acting_recovery_backfill_shard_id_set();
+  }
   const std::set<pg_shard_t> &get_acting_shards() const override {
     return recovery_state.get_actingset();
   }