Skip to content

Shorten decommissioned/dead node grace periods to prevent digest overflow - #6653

Merged
fulmicoton merged 2 commits into
mainfrom
paul.masurel/shorter-grace-period
Aug 3, 2026
Merged

Shorten decommissioned/dead node grace periods to prevent digest overflow#6653
fulmicoton merged 2 commits into
mainfrom
paul.masurel/shorter-grace-period

Conversation

@fulmicoton-dd

Copy link
Copy Markdown
Collaborator

Summary

When a cluster is unstable for a long period of time, nodes accumulate in the marked-for-deletion and failure-detector state without being garbage collected, since both grace periods were set to 2 hours. This let the chitchat digest grow past 500 nodes after a gossip round, exceeding the largest transmittable digest size and causing nodes to fail.

  • Shortens MARKED_FOR_DELETION_GRACE_PERIOD from 2 hours to 15 minutes
  • Shortens dead_node_grace_period from 2 hours to 15 minutes

Test plan

  • cargo clippy --workspace --all-features --tests (blocked locally: chitchat = "0.11.2" isn't published on crates.io yet)
  • cargo nextest run -p quickwit-cluster --all-features

Comment thread quickwit/Cargo.toml
bytes = { version = "1", features = ["serde"] }
bytesize = { version = "2.4", features = ["serde"] }
bytestring = "1.5"
chitchat = "0.11.1"

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

i also increased the dead node cache size in chitchat.

@fulmicoton
fulmicoton requested a review from guilload August 3, 2026 15:38
@fulmicoton
fulmicoton marked this pull request as ready for review August 3, 2026 15:38
@fulmicoton
fulmicoton requested a review from a team as a code owner August 3, 2026 15:38
…flow

When a cluster is unstable for a long period of time, nodes accumulate
in the marked-for-deletion and failure-detector state without being
garbage collected, since both grace periods were set to 2 hours. This
let the chitchat digest grow past 500 nodes after a gossip round,
exceeding the largest transmittable digest size and causing nodes to
fail. Shortening both grace periods to 15 minutes lets stale nodes be
GC'd promptly, keeping the digest bounded.
@fulmicoton-dd
fulmicoton-dd force-pushed the paul.masurel/shorter-grace-period branch from 835a134 to bb6fa43 Compare August 3, 2026 15:42
@fulmicoton-dd
fulmicoton-dd requested a review from a team as a code owner August 3, 2026 15:42

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 835a1344b2

ℹ️ About Codex in GitHub

Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".

Comment thread quickwit/Cargo.toml
bytesize = { version = "2.4", features = ["serde"] }
bytestring = "1.5"
chitchat = "0.11.1"
chitchat = "0.11.2"

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Update the lockfile with the chitchat bump

This workspace dependency now requires chitchat 0.11.2, but the committed quickwit/Cargo.lock still pins the package to 0.11.1. Any build or test path that honors the checked-in lockfile, such as --locked/--frozen or vendored/reproducible builds, will either fail resolution or not be able to use the dependency version this fix relies on, so the lockfile needs to be regenerated and committed with this manifest change.

Useful? React with 👍 / 👎.

@fulmicoton
fulmicoton enabled auto-merge (squash) August 3, 2026 15:52
@fulmicoton
fulmicoton disabled auto-merge August 3, 2026 15:52
@fulmicoton
fulmicoton enabled auto-merge (squash) August 3, 2026 15:53
@fulmicoton
fulmicoton merged commit d54adf2 into main Aug 3, 2026
9 checks passed
@fulmicoton
fulmicoton deleted the paul.masurel/shorter-grace-period branch August 3, 2026 16:03
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