-
Notifications
You must be signed in to change notification settings - Fork 453
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
[dbnode] Add ability to force repair regardless namespace has option set and add compare only repair type #3550
[dbnode] Add ability to force repair regardless namespace has option set and add compare only repair type #3550
Conversation
…set and allow compare only repair type
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.
LGTM
// Type is the type of repair to run. | ||
Type repair.Type `yaml:"type"` | ||
|
||
// Force the repair to run regardless of whether namespaces have repair enabled or not. |
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.
nit: change to ForceEnabled
for context?
var successCounters []tally.CounterSnapshot | ||
for _, setup := range setups { | ||
scope := setup.Scope() | ||
for _, v := range scope.Snapshot().Counters() { |
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.
nit: can also use tallytest.AssertCounterValue
but it can be a little finicky
What this PR does / why we need it:
Adds ability to force repair regardless of if a namespace has repair option set or not. Also adds the ability to simply run comparison and emit metrics instead of executing the repair of the data, useful for assessing health of the cluster without automatic background repairs running.
Also adds an integration test that verifies the flags are respected between the different components in the storage package.
Special notes for your reviewer:
Does this PR introduce a user-facing and/or backwards incompatible change?:
Does this PR require updating code package or user-facing documentation?: