]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commit
osd: EC optimizations rework for pg_temp
authorBill Scales <bill_scales@uk.ibm.com>
Thu, 29 May 2025 11:53:27 +0000 (12:53 +0100)
committerLaura Flores <lflores@ibm.com>
Wed, 9 Jul 2025 15:47:24 +0000 (15:47 +0000)
commit807b1f747e8d582aebf3effb8226ea1040ea8cdc
treeb691054d976e1736cbe13282935b857296a313a3
parent5cf52ec6cd3249e14d60fc7e4b9f9c036bf492c6
osd: EC optimizations rework for pg_temp

Bug fixes for how pg_temp is used with optimized EC pools. For these
pools pg_temp is re-ordered with non-primary shards last. The acting
set was undoing this re-ordering in PeeringState, but this is too
late and results code getting the shard id wrong. One consequence
iof this was an OSD refusing to create a PG because of an incorrect
shard id.

This commit moves the re-ordering earlier into OSDMap::_get_temp_osds,
some changes are then required to OSDMap::clean_temps.

Signed-off-by: Bill Scales <bill_scales@uk.ibm.com>
(cherry picked from commit 6c8b0297aaafeb0cff7350e52212140c85435afe)
src/osd/OSDMap.cc
src/osd/OSDMap.h
src/osd/PeeringState.cc