Skip to content

Conversation

@joe-elliott
Copy link
Collaborator

Backport 6d70705 from #4790


What this PR does:
A panic was introduced here by abusing the ring forEach function to collect results. replicationSet.Do can return before all reads are complete if quorum is reached. Under certain, rare circumstances this caused the forEach function to modify a result here after it has already been returned and was being marshalled by the gRPC stack into proto.

Checklist

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

* fix forIngesterRings

Signed-off-by: Joe Elliott <[email protected]>

* fix generators

Signed-off-by: Joe Elliott <[email protected]>

* refactor to pass the funcs in directly

Signed-off-by: Joe Elliott <[email protected]>

* fix breaks

Signed-off-by: Joe Elliott <[email protected]>

* improve error

Signed-off-by: Joe Elliott <[email protected]>

* got rid of metrics collector

Signed-off-by: Joe Elliott <[email protected]>

* chagnelog

Signed-off-by: Joe Elliott <[email protected]>

* fix found behavior

Signed-off-by: Joe Elliott <[email protected]>

---------

Signed-off-by: Joe Elliott <[email protected]>
(cherry picked from commit 6d70705)
@joe-elliott joe-elliott added type/bug Something isn't working backport labels Mar 25, 2025
@joe-elliott joe-elliott marked this pull request as ready for review March 25, 2025 17:22
@joe-elliott joe-elliott merged commit b33945a into release-v2.7 Mar 25, 2025
22 checks passed
@joe-elliott joe-elliott deleted the backport-4790-to-release-v2.7 branch March 25, 2025 17:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backport type/bug Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants