Project

General

Profile

Actions

Feature #39362

open

ignore osd_max_scrubs for forced repair

Added by Dan van der Ster about 5 years ago. Updated over 3 years ago.

Status:
New
Priority:
Normal
Assignee:
David Zafman
Category:
Scrub/Repair
Target version:
-
% Done:

0%

Source:
Community (user)
Tags:
Backport:
Reviewed:
Affected Versions:
Component(RADOS):
OSD
Pull request ID:

Description

On clusters with quite full PGs, it is common (i.e. ~100% sure) that a `ceph pg repair <pgid>` does not start immediately, because the relevant osds have their osd_max_scrubs (default 1) already reserved by deep scrubs.

The unintuitive workaround is:

ceph osd set nodeep-scrub
ceph osd set noscrub
ceph tell osd.* injectargs -- --osd_max_scrubs=2
ceph pg repair ...
ceph tell osd.* injectargs -- --osd_max_scrubs=1
ceph osd unset nodeep-scrub
ceph osd unset noscrub

It would be more intuitive if forced repairs started immediately irrespective of the osd_max_scrubs configuration.


Related issues 1 (1 open0 closed)

Related to RADOS - Feature #41363: Allow user to cancel scrub requestsNewDavid Zafman

Actions
Actions #1

Updated by David Zafman almost 5 years ago

  • Assignee set to David Zafman
Actions #2

Updated by David Zafman over 3 years ago

  • Related to Feature #41363: Allow user to cancel scrub requests added
Actions #3

Updated by David Zafman over 3 years ago

We probably should only do this if #41363 has been implemented together or beforehand. Since too many repairs could impact performance, the admin might want to cancel repairs he initiated. Note that noscrub/nodeep-scrub doesn't apply to requested repairs.

Actions

Also available in: Atom PDF