Skip to content

Skip memberlist zone-aware routing if there is a zone with members but no alive bridges#13664

Merged
pracucci merged 4 commits intomainfrom
update-memberlist-and-dskit
Nov 28, 2025
Merged

Skip memberlist zone-aware routing if there is a zone with members but no alive bridges#13664
pracucci merged 4 commits intomainfrom
update-memberlist-and-dskit

Conversation

@pracucci
Copy link
Copy Markdown
Collaborator

@pracucci pracucci commented Nov 26, 2025

What this PR does

Update memberlist and dskit to get:

I've updated MimirMemberlistBridgeZoneUnavailable alert for duration because after this PR having no running bridges in a zone will be less severe.

Which issue(s) this PR fixes or relates to

N/A

Checklist

  • Tests updated.
  • Documentation added.
  • CHANGELOG.md updated - the order of entries should be [CHANGE], [FEATURE], [ENHANCEMENT], [BUGFIX]. If changelog entry is not needed, please add the changelog-not-needed label to the PR.
  • about-versioning.md updated with experimental features.

Note

Update memberlist/dskit and etcd stack, adopt new memberlist node-selection API, improve networking/transport, and relax the bridge-unavailable alert timing.

  • Memberlist / Gossip:
    • Export NodeState and replace NodeSelectionDelegate.SelectNode with SelectNodes(selected, preferred); update k-random node selection accordingly.
  • Etcd (vendor → v3.6.x) / Client:
    • Upgrade APIs/protos (new fields like hash_revision, snapshot version, status storageVersion/dbSizeQuota/downgradeInfo).
    • Add Maintenance.Downgrade and SnapshotWithVersion; refine retry/backoff, auth token refresh, error handling (ContextError).
    • TLS/transport tweaks (default min TLS 1.2, local addr support).
  • Networking/Transport:
    • Update go-proxyproto (new ConnPolicyFunc, improved Accept/reader, write path) and keep-alive handling with OS-specific fixes; socket option handling for non-Linux.
  • Alerts:
    • Relax MimirMemberlistBridgeZoneUnavailable alert for duration.
  • Misc:
    • Vendor bumps (dskit, gomemcache) and related code adjustments.

Written by Cursor Bugbot for commit 7568146. This will update automatically on new commits. Configure here.

Comment thread CHANGELOG.md Outdated
* [FEATURE] Distributor: add `-distributor.otel-label-name-underscore-sanitization` and `-distributor.otel-label-name-preserve-underscores` that control sanitization of underscores during OTLP translation. #13133
* [FEATURE] Query-frontends: Automatically adjust features used in query plans generated for remote execution based on what the available queriers support. #13017 #13164 #13544
* [FEATURE] Memberlist: Add experimental support for zone-aware routing, in order to reduce memberlist cross-AZ data transfer. #13129
* [FEATURE] Memberlist: Add experimental support for zone-aware routing, in order to reduce memberlist cross-AZ data transfer. #13129 #13651 #13664
Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Note to reviewers: I've added the PR #13651 which was part of this work but I didn't include previously.

@pracucci pracucci marked this pull request as ready for review November 26, 2025 16:07
@pracucci pracucci requested review from a team and stevesg as code owners November 26, 2025 16:07
@pracucci pracucci force-pushed the update-memberlist-and-dskit branch from 6b785e6 to 9a3de6a Compare November 27, 2025 15:49
@pracucci pracucci requested a review from tacole02 as a code owner November 27, 2025 15:49
Comment thread go.mod
@@ -332,7 +331,7 @@ require (
github.com/stretchr/objx v0.5.2 // indirect
github.com/uber/jaeger-lib v2.4.1+incompatible // indirect
github.com/xhit/go-str2duration/v2 v2.1.0 // indirect
go.etcd.io/etcd/api/v3 v3.5.4 // indirect
go.etcd.io/etcd/api/v3 v3.6.6 // indirect
Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Note to reviewers: inherited from dskit (grafana/dskit@0d0dd15)

@github-actions
Copy link
Copy Markdown
Contributor

github-actions bot commented Nov 27, 2025

💻 Deploy preview deleted (Skip memberlist zone-aware routing if there is a zone with members but no alive bridges).

Copy link
Copy Markdown
Contributor

@tacole02 tacole02 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Docs look good! I left a few minor suggestions. Thank you!

Comment thread CHANGELOG.md Outdated
Comment thread docs/sources/mimir/manage/mimir-runbooks/_index.md Outdated
pracucci added a commit to grafana/dskit that referenced this pull request Nov 28, 2025
**What this PR does**:

Fix panic found by cursor that, at this point, is definitely better than
us:
grafana/mimir#13664 (comment)

**Which issue(s) this PR fixes**:

N/A

**Checklist**
- [ ] Tests updated

Signed-off-by: Marco Pracucci <[email protected]>
pracucci and others added 4 commits November 28, 2025 09:21
@pracucci pracucci force-pushed the update-memberlist-and-dskit branch from 01f4745 to 7568146 Compare November 28, 2025 08:22
@pracucci pracucci merged commit c1298bc into main Nov 28, 2025
43 checks passed
@pracucci pracucci deleted the update-memberlist-and-dskit branch November 28, 2025 14:25
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