]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
crimson/osd: check if req should be server with obc lock 36919/head
authorKefu Chai <kchai@redhat.com>
Mon, 31 Aug 2020 15:12:04 +0000 (23:12 +0800)
committerKefu Chai <kchai@redhat.com>
Tue, 1 Sep 2020 15:15:55 +0000 (23:15 +0800)
commit14208621406e28fc6f108f2cc472d7367070462d
tree5b5f9fe2205f2b7010f04dba91553cc86e3a2c8e
parent8695ba49c4f656d2bcf6a7c6be5cbbce23d719ef
crimson/osd: check if req should be server with obc lock

there is chance that osdmap is updated after the obc lock is acquired
for a certain object, and before the lock is acquired, the OSD is able
to serve the request. and the updated osdmap changes the OSD from
primary to a stray OSD of the PG in question. so we need to move the
check closer to where we actually handle the op.

Fixes: https://tracker.ceph.com/issues/47212
Signed-off-by: Kefu Chai <kchai@redhat.com>
src/crimson/osd/osd_operations/client_request.cc