]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
osd/ECBackend: optimize remaining read as readop contain multiple objects 35821/head
authorZengran Zhang <zhangzengran@sangfor.com.cn>
Mon, 29 Jun 2020 03:37:16 +0000 (11:37 +0800)
committerZengran Zhang <zhangzengran@sangfor.com.cn>
Mon, 17 Aug 2020 15:05:31 +0000 (23:05 +0800)
commitf7a164a892363cc45a78a6b909e160380549c0ed
treeebd8e4cc053baf172f4d33ed0153ee1fe7aec41a
parent1169dee2592ec41777207fcf5742b5e936a100fc
osd/ECBackend: optimize remaining read as readop contain multiple objects

in github.com/ceph/ceph/pull/21911
we s/rop.to_read.swap/rop.to_read.erase/ in send_all_remaining_reads(...),
and then introduce a new little issue: if one of to_read objects meet shard error,
we will only change the uncompleted object's to read, but do_read_op will resend the
completed objects shard read, because we did not modify their to_read's need.

Fixes: https://tracker.ceph.com/issues/46876
Signed-off-by: Zengran Zhang <zhangzengran@sangfor.com.cn>
src/osd/ECBackend.cc
src/osd/ECBackend.h