]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commitdiff
crimson/osd/../client_request: drop rwoedered with balanced/localize reads wip-matanb-crimson-misdirected-fix
authorMatan Breizman <mbreizma@redhat.com>
Tue, 15 Jul 2025 08:24:22 +0000 (08:24 +0000)
committerMatan Breizman <mbreizma@redhat.com>
Sun, 27 Jul 2025 11:34:07 +0000 (11:34 +0000)
This is the counterpart of https://github.com/ceph/ceph/pull/62806
Which fixes classical: https://tracker.ceph.com/issues/70715

Fixes: https://tracker.ceph.com/issues/71007
Signed-off-by: Matan Breizman <mbreizma@redhat.com>
src/crimson/osd/osd_operations/client_request.cc

index cfb85bc83b44e632194cc092fecb1cb1e0764b43..3dd27ff55f77ed72a78c5630d1a0776082c0a900 100644 (file)
@@ -632,6 +632,10 @@ bool ClientRequest::is_misdirected_replica_read(const PG& pg) const
   if (const int flags = m->get_flags();
       flags & CEPH_OSD_FLAG_BALANCE_READS ||
       flags & CEPH_OSD_FLAG_LOCALIZE_READS) {
+    if (op_info.rwordered()) {
+      DEBUGDPP("{}: dropping - rwoedered with balanced/localize read {}", pg, *this);
+      return true;
+    }
     if (!op_info.may_read()) {
       DEBUGDPP("{}: dropping - no read found with balanced/localize read", pg, *this);
       return true;