]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commit
crimson/osd: wait for min_epoch instead of map_epoch
authorKefu Chai <kchai@redhat.com>
Wed, 18 Nov 2020 10:34:38 +0000 (18:34 +0800)
committerKefu Chai <kchai@redhat.com>
Thu, 26 Nov 2020 12:13:48 +0000 (20:13 +0800)
commitcbbd74558bbe0dace86116c4e4358a7852e625bf
treeb7c3927b044307bb8fbfb6c4ff47e04bf9980b80
parent48515e9b8dd7d60507ca0b3b99ae23f0ee85906a
crimson/osd: wait for min_epoch instead of map_epoch

osdmap_epoch is the latest osdmap of the client, it is not the minimum
osdmap epoch required to serve the request from the client with this
osdmap.

as a matter of fact, `MOSDOp` inherits from `MOSDFastDispatchOp`.
the `MOSDFastDispatchOp::get_min_epoch()` returns `get_map_epoch()`, and
`MOSDOp` does not override `get_min_epoch()`.

`ClientRequest` is designed to handle `MOSDOp`. so, there is no need
to wait for `m->get_map_epoch()` osdmap before moving further, and more
importantly, we should wait until PG is updated with min_epoch osdmap.

Signed-off-by: Kefu Chai <kchai@redhat.com>
src/crimson/osd/osd_operations/client_request.cc