Plugins are permitted to provide a mapping to change the order in which OSDs
are used. In practice only LRC does this and it is not currently enabled
with optimisations, so this is a theoretical bug.
The bug here was that the "first" shard was assumed to be shard_id_t(0). However,
this is not true for LRC.
Fixes: https://tracker.ceph.com/issues/74016
Signed-off-by: Alex Ainscow <aainscow@uk.ibm.com>
} else {
// All primary shards must always be written, regardless of the write plan.
shards_written(sinfo.get_parity_shards());
- shard_written(shard_id_t(0));
+ shard_written(sinfo.get_shard(raw_shard_id_t(0)));
}
written_shards();