From: Radoslaw Zarzynski Date: Fri, 17 Oct 2025 14:39:49 +0000 (+0000) Subject: crimson/osd: don't decode EC only attrs are needed X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=bcf40145e71e34fd524621eb57fd94dd7dda42a1;p=ceph-ci.git crimson/osd: don't decode EC only attrs are needed This a crimson coutnerpart of 417fb71c9b5628726d3217909ba1b6d3e7bf251a. Signed-off-by: Radoslaw Zarzynski --- diff --git a/src/crimson/osd/ec_backend.cc b/src/crimson/osd/ec_backend.cc index 66e1fa364eb..0e1ff729005 100644 --- a/src/crimson/osd/ec_backend.cc +++ b/src/crimson/osd/ec_backend.cc @@ -719,8 +719,12 @@ ECBackend::handle_rep_read_reply(ECSubReadReply& mop) rop.to_read.at(oid).shard_want_to_read. populate_shard_id_set(want_to_read); - int err = ec_impl->minimum_to_decode(want_to_read, have, dummy_minimum, - nullptr); + int err = -EIO; // If attributes needed but not read. + if (!rop.to_read.at(oid).want_attrs || rop.complete.at(oid).attrs) { + err = ec_impl->minimum_to_decode(want_to_read, have, dummy_minimum, + nullptr); + } + if (err) { logger().debug("{} minimum_to_decode failed {}", __func__, err); if (rop.in_progress.empty()) {