Open test-erik opened 3 days ago
This script assumes that all per-pool scrub settings are set. I thought about it and decided that I will not spend time on supporting other sources of scrub settings and try to figure out which one has actual precedence or applies to what pool. I did consider to add a check whether or not some pool variables are set (non-zero) and remove certain stats from the output and decided against it because it is a major hassle and doesn't seem to be worth the effort.
To get the entire script to work properly, please set the per-pool scrub settings. I would recommend that in any case.
Otherwise, please ignore stats and division by zero errors, most of the numbers are then meaningless any ways. The only output that should be correct is the actual scrub stamp histogram and that looks good in your case (everything unreliable removed):
Scrub info for pool libvirt-pool (id=2): using cache (RTTL=3:38)
Scrub report:
18% 94 PGs not scrubbed since 1 intervals ( 6h)
39% 109 PGs not scrubbed since 2 intervals ( 12h)
58% 96 PGs not scrubbed since 3 intervals ( 18h)
74% 80 PGs not scrubbed since 4 intervals ( 24h) [1 idle]
93% 100 PGs not scrubbed since 5 intervals ( 30h)
100% 33 PGs not scrubbed since 6 intervals ( 36h) 1 scrubbing
Deep-scrub report:
16% 82 PGs not deep-scrubbed since 1 intervals ( 24h)
34% 95 PGs not deep-scrubbed since 2 intervals ( 48h) [1 scrubbing]
52% 93 PGs not deep-scrubbed since 3 intervals ( 72h)
64% 58 PGs not deep-scrubbed since 4 intervals ( 96h)
75% 60 PGs not deep-scrubbed since 5 intervals (120h)
86% 57 PGs not deep-scrubbed since 6 intervals (144h)
94% 38 PGs not deep-scrubbed since 7 intervals (168h)
99% 26 PGs not deep-scrubbed since 8 intervals (192h)
100% 3 PGs not deep-scrubbed since 9 intervals (216h) [3 busy]
I reopened it to remember it. I consider fixing it in some way at a later time.
Check if it is possible to pull missing settings from the primary OSD of the first PG. Possibly print a warning that some parameter values are unreliable because settings for other OSDs might conflict (and that will not be checked).
Print recommendation to set per-pool scrub parameters if missing.
That's the
bash -x
output. I hope it contains enough information for solvinmg the bc errors: