Implement quorum reads and merging for /v2/alerts and /v2/alerts/groups.#4127
Merged
pracucci merged 2 commits intocortexproject:masterfrom Apr 28, 2021
Merged
Implement quorum reads and merging for /v2/alerts and /v2/alerts/groups.#4127pracucci merged 2 commits intocortexproject:masterfrom
pracucci merged 2 commits intocortexproject:masterfrom
Conversation
608bb1d to
2b8e8e3
Compare
Reading alert listings via /v2/alerts and /v2/alerts/groups will now read from a quorum of replicas and return a merged response. Alerts are merged by returning the union of alerts over all responses. When multiple responses contain the same alert, the alert with the most recent "updatedAt" timestamp is chosen. Groups are returned by returning the union of groups over all responses. When the same group is present in multiple responses (same receiver and labels fingerprint), the groups are merged into by merging the sets of alerts in each. Signed-off-by: Steve Simpson <steve.simpson@grafana.com>
Signed-off-by: Steve Simpson <steve.simpson@grafana.com>
2b8e8e3 to
983c152
Compare
pstibrany
approved these changes
Apr 28, 2021
Contributor
pstibrany
left a comment
There was a problem hiding this comment.
Nice job, especially the unit tests!
Contributor
|
Can you please rebase against master to pull in #4137 and move the changelog entry to the top? |
pracucci
approved these changes
Apr 28, 2021
Contributor
pracucci
left a comment
There was a problem hiding this comment.
Amazing job! Looks flawless to me 👏
Contributor
|
Does this (and previous) PR need a changelog entry? |
Contributor
Right! The whole alertmanager sharding work is missing a CHANGELOG entry. @stevesg I think it's time to open a PR with that, given the work is getting done. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What this PR does:
Reading alert listings via /v2/alerts and /v2/alerts/groups will now
read from a quorum of replicas and return a merged response.
Alerts are merged by returning the union of alerts over all responses.
When multiple responses contain the same alert, the alert with the most
recent "updatedAt" timestamp is chosen. Groups are returned by returning
the union of groups over all responses. When the same group is present in
multiple responses (same receiver and labels fingerprint), the groups are
merged into by merging the sets of alerts in each.
Checklist
Documentation addedCHANGELOG.mdupdated - the order of entries should be[CHANGE],[FEATURE],[ENHANCEMENT],[BUGFIX]