From: Greg Farnum Date: Fri, 6 Jun 2014 20:45:49 +0000 (-0700) Subject: osdc/Objecter: mark all ops as known-if-redirected X-Git-Tag: v0.83~126^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=refs%2Fpull%2F1935%2Fhead;p=ceph.git osdc/Objecter: mark all ops as known-if-redirected Signed-off-by: Greg Farnum --- diff --git a/src/include/rados.h b/src/include/rados.h index 5a2aeffefd04..0c9791d9d565 100644 --- a/src/include/rados.h +++ b/src/include/rados.h @@ -377,6 +377,7 @@ enum { CEPH_OSD_FLAG_ENFORCE_SNAPC =0x100000, /* use snapc provided even if pool uses pool snaps */ CEPH_OSD_FLAG_REDIRECTED = 0x200000, /* op has been redirected */ + CEPH_OSD_FLAG_KNOWN_REDIR = 0x400000, /* redirect bit is authoritative */ }; enum { diff --git a/src/osd/osd_types.cc b/src/osd/osd_types.cc index cfd98167195c..3fd1cf0ac35f 100644 --- a/src/osd/osd_types.cc +++ b/src/osd/osd_types.cc @@ -49,6 +49,7 @@ const char *ceph_osd_flag_name(unsigned flag) case CEPH_OSD_FLAG_MAP_SNAP_CLONE: return "map_snap_clone"; case CEPH_OSD_FLAG_ENFORCE_SNAPC: return "enforce_snapc"; case CEPH_OSD_FLAG_REDIRECTED: return "redirected"; + case CEPH_OSD_FLAG_KNOWN_REDIR: return "known_if_redirected"; default: return "???"; } } diff --git a/src/osdc/Objecter.cc b/src/osdc/Objecter.cc index f6a1efb74e56..b454c66ebb16 100644 --- a/src/osdc/Objecter.cc +++ b/src/osdc/Objecter.cc @@ -1625,6 +1625,7 @@ void Objecter::send_op(Op *op) ldout(cct, 15) << "send_op " << op->tid << " to osd." << op->session->osd << dendl; int flags = op->target.flags; + flags |= CEPH_OSD_FLAG_KNOWN_REDIR; if (op->oncommit) flags |= CEPH_OSD_FLAG_ONDISK; if (op->onack)