If a ReadOp from EC contains two objects where one object only reads from a single shard, but
other onjects require other shards, then this bug can be hit. The fix should make it clear
what the issue is
Signed-off-by: Alex Ainscow <aainscow@uk.ibm.com>
(cherry picked from commit
8c92dcf6c0092f4dd140bb712ce4a38990a3cba2)
rop.complete.emplace(hoid, &sinfo);
}
auto &complete = rop.complete.at(hoid);
+ if (!req.shard_reads.contains(from.shard)) {
+ continue;
+ }
const shard_read_t &read = req.shard_reads.at(from.shard);
if (!complete.errors.contains(from)) {
dout(20) << __func__ <<" read:" << read << dendl;