]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
osd/PG: normalize query processing in Stray and ReplicaActive 22545/head
authorSage Weil <sage@redhat.com>
Thu, 7 Jun 2018 13:33:46 +0000 (08:33 -0500)
committerNathan Cutler <ncutler@suse.com>
Wed, 13 Jun 2018 10:15:51 +0000 (12:15 +0200)
commit6d7d01ef99f290b58ec1cd27f8f99fde3d690ebe
treed21853e7dd50648b398d50625f4b3d58ec2a9eba
parent448bd17a6876478438160cc079513e810534e056
osd/PG: normalize query processing in Stray and ReplicaActive

A stray PG may end up in ReplicaActive if it is participating in backfill.
However, whether it is or isn't, we should treat queries the same.
Otherwise we end up with weird behaviors like:

 - osd's stray pg moves to ReplicaActive (gets info+log from primary)
 - osd goes down and back up
 - primary restarts peering, request FULLLOG to find missing objects
 - osd ignores FULLLOG because it is ReplicaActive and not Stray

Fixes: http://tracker.ceph.com/issues/24373
Reported-by: Kouya Shimura <kouya@jp.fujitsu.com>
Signed-off-by: Sage Weil <sage@redhat.com>
(cherry picked from commit 4e14a380becd61d823a1c86e2dbb41dc8e3a5834)
src/osd/PG.cc
src/osd/PG.h