Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

osd/PG: remote recovery preemption, and new feature bit to condition it on #18553

Merged
merged 8 commits into from Oct 30, 2017

Conversation

liewegas
Copy link
Member

  • we did remote backfill preemption; now add recovery too
  • new feature bit to guard the new behavior(s) so that this can be backported later

This will allow us to backport support for reservation preemption and
cancellations on the wire.

Signed-off-by: Sage Weil <sage@redhat.com>
We did backfill but not recovery.  This one is easier because we already
have a DeferRecovery event we can queue that does everything.

Condition on the RECOVERY_RESERVATION_2 feature.

Signed-off-by: Sage Weil <sage@redhat.com>
Signed-off-by: Sage Weil <sage@redhat.com>
If we have a REQUEST outstanding and then cancel, send a RELEASE to the
REQUEST target too, so that they too can clean up.  This avoids leaving
the replica in the RepRecovering state when the primary is restarting
the whole reservation process.

Signed-off-by: Sage Weil <sage@redhat.com>
This was only half-implemented by c1e652a

Signed-off-by: Sage Weil <sage@redhat.com>
If we get a REQUEST and RELEASE in quick succession, we may process a
local Remote*Reserved back in the RepNotRecovering state.

Signed-off-by: Sage Weil <sage@redhat.com>
If we restart the recovery reservation process for some reason (e.g.,
local preemption), we may still get a racing REVOKE from the replicas in
the previous round.  Ignore.

Signed-off-by: Sage Weil <sage@redhat.com>
@liewegas liewegas merged commit 059d046 into ceph:master Oct 30, 2017
@liewegas liewegas deleted the wip-preempt-feature branch October 30, 2017 02:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
2 participants