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: Add config option to disable new scrubs during recovery #11874
Conversation
if (scrubs_pending + scrubs_active < cct->_conf->osd_max_scrubs) { | ||
if (!cct->_conf->osd_scrub_during_recovery && recovery_ops_active > 0) { | ||
dout(20) << __func__ << "not scheduling scrub because recovery is active" << dendl; | ||
} else if (scrubs_pending + scrubs_active < cct->_conf->osd_max_scrubs) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think the check should go alongside the load and time checks in sched_scrub()
cf0dd12
to
ecdb6fc
Compare
Could you check again @liewegas ? Or do you want this to go into the same if as the load and time check? |
ecdb6fc
to
30d0e43
Compare
/home/jenkins-build/build/workspace/ceph-pull-requests/src/osd/OSD.cc: In member function ‘void OSD::sched_scrub()’: |
40251b1
to
36f30d7
Compare
There seems to be a erasure coding failure, but I don't see why this might be related to this change |
The osd_scrub_during_recovery config option allows for configuring if the OSD will schedule a new scrub while recovery is active. When set to false no new scrubs will be initiated by the OSD while there are recovery threads active on that OSD. Signed-off-by: Wido den Hollander <wido@42on.com>
36f30d7
to
33f1f60
Compare
@liewegas Is this a candidate for backport to jewel? |
@smithfarm sure, once it lands in master |
Adding this to one of the thrashers in ceph-qa-suite, see ceph/ceph-qa-suite#1248 |
@wido Could you add |
A new config option allows for configuring if the OSD will schedule
a new scrub while recovery is active.
When set to false no new scrubs will be initiated by the OSD while
there are recovery threads active on that OSD.
Fixes: http://tracker.ceph.com/issues/17866
Signed-off-by: Wido den Hollander wido@42on.com