Skip to content

feat(ring): Add the option of having a lower consistency level#686

Draft
mbarbon wants to merge 4 commits intografana:mainfrom
mbarbon:mbarbon/mimir-lower-read-consistency
Draft

feat(ring): Add the option of having a lower consistency level#686
mbarbon wants to merge 4 commits intografana:mainfrom
mbarbon:mbarbon/mimir-lower-read-consistency

Conversation

@mbarbon
Copy link
Copy Markdown

@mbarbon mbarbon commented Apr 30, 2025

This set of changes adds an optional consistency level for ring.Ring (defaulting to existing behavior of a quorum of RF/2+1).

This setting is going to be used by a follow-up change in Mimir (draft here) to optionally use a lower consistency level in read operations to trade lower consistency for higher availability.

Checklist

  • Tests updated
  • CHANGELOG.md updated - the order of entries should be [CHANGE], [FEATURE], [ENHANCEMENT], [BUGFIX]

mbarbon added 4 commits April 29, 2025 15:49
This is consistent with what defaultReplicationStrategy is doing, and allows
for read consistency different from quorum.
- any always reads from a single zone
- relaxed_quorum tries to use a quorum, and if that fails uses all available zones

Enabling this setting trades consistency for availability.
@CLAassistant
Copy link
Copy Markdown

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.
You have signed the CLA already but the status is still pending? Let us recheck it.

@pracucci
Copy link
Copy Markdown
Contributor

pracucci commented Apr 7, 2026

Hi! 👋 We recently merged #947 which changed the CI configuration for unit tests. To get CI passing on this PR, please rebase on the latest main branch:

git fetch origin main
git rebase origin/main
git push --force-with-lease

Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants