mirror of
https://github.com/ceph/ceph
synced 2024-12-25 12:54:16 +00:00
b3e1c58b0e
This is similar to how recovery reservations are split between local and remote. It was the case that scrubs_pending was used for reservations at the replicas as well as at the primary while requesting reservations from the replicas. There was no need for scrubs_pending to turn into scrubs_active at the primary as nothing treated that value as special. scrubber.active = true when scrubbing is actually going. Now scurbber.local_reserved indicates scrubs_local incremented Now scrubber.remote_reserved indicates scrubs_remote incremented Fixes: https://tracker.ceph.com/issues/41669 Signed-off-by: David Zafman <dzafman@redhat.com>
42 lines
2.2 KiB
ReStructuredText
42 lines
2.2 KiB
ReStructuredText
|
|
Scrub internals and diagnostics
|
|
===============================
|
|
|
|
Scrubbing Behavior Table
|
|
------------------------
|
|
|
|
+-------------------------------------------------+----------+-----------+---------------+----------------------+
|
|
| Flags | none | noscrub | nodeep_scrub | noscrub/nodeep_scrub |
|
|
+=================================================+==========+===========+===============+======================+
|
|
| Periodic tick | S | X | S | X |
|
|
+-------------------------------------------------+----------+-----------+---------------+----------------------+
|
|
| Periodic tick after osd_deep_scrub_interval | D | D | S | X |
|
|
+-------------------------------------------------+----------+-----------+---------------+----------------------+
|
|
| Initiated scrub | S | S | S | S |
|
|
+-------------------------------------------------+----------+-----------+---------------+----------------------+
|
|
| Initiated scrub after osd_deep_scrub_interval | D | D | S | S |
|
|
+-------------------------------------------------+----------+-----------+---------------+----------------------+
|
|
| Initiated deep scrub | D | D | D | D |
|
|
+-------------------------------------------------+----------+-----------+---------------+----------------------+
|
|
|
|
- X = Do nothing
|
|
- S = Do regular scrub
|
|
- D = Do deep scrub
|
|
|
|
State variables
|
|
---------------
|
|
|
|
- Periodic tick state is !must_scrub && !must_deep_scrub && !time_for_deep
|
|
- Periodic tick after osd_deep_scrub_interval state is !must_scrub && !must_deep_scrub && time_for_deep
|
|
- Initiated scrub state is must_scrub && !must_deep_scrub && !time_for_deep
|
|
- Initiated scrub after osd_deep_scrub_interval state is must scrub && !must_deep_scrub && time_for_deep
|
|
- Initiated deep scrub state is must_scrub && must_deep_scrub
|
|
|
|
Scrub Reservations
|
|
------------------
|
|
|
|
An OSD daemon command dumps total local and remote reservations::
|
|
|
|
ceph daemon osd.<id> dump_scrub_reservations
|
|
|