Skip to content

fix: Fix panic in BloomStore initialisation - #13457

Merged
chaudum merged 1 commit into
mainfrom
chaudum/fix-init-bloomstore-panics
Jul 9, 2024
Merged

fix: Fix panic in BloomStore initialisation#13457
chaudum merged 1 commit into
mainfrom
chaudum/fix-init-bloomstore-panics

Conversation

@chaudum

@chaudum chaudum commented Jul 9, 2024

Copy link
Copy Markdown
Contributor

What this PR does / why we need it:

The initialisation of the BloomStore service failed with a panic if the index gateways were configured to use ring mode.

This happened, because the bloom store requires to wire up the configuration for the shipper store, see
https://github.com/grafana/loki/blob/1a508b0aa/pkg/loki/modules.go#L864-L867

At this time, the index gateway ring manager wasn't initialized yet, leading to a nil pointer dereference.

This PR fixes the issue by adding the index gateway ring as dependency of the bloom store so it gets initialised first.

Checklist

  • Reviewed the CONTRIBUTING.md guide (required)
  • Documentation added
  • Tests updated
  • Title matches the required conventional commits format, see here
    • Note that Promtail is considered to be feature complete, and future development for logs collection will be in Grafana Alloy. As such, feat PRs are unlikely to be accepted unless a case can be made for the feature actually being a bug fix to existing behavior.
  • Changes that require user attention or interaction to upgrade are documented in docs/sources/setup/upgrade/_index.md
  • For Helm chart changes bump the Helm chart version in production/helm/loki/Chart.yaml and update production/helm/loki/CHANGELOG.md and production/helm/loki/README.md. Example PR
  • If the change is deprecating or removing a configuration option, update the deprecated-config.yaml and deleted-config.yaml files respectively in the tools/deprecated-config-checker directory. Example PR
The initialisation of the `BloomStore` service failed with a panic if
the index gateways were configured to use `ring` mode.

This happened, because the bloom store requires to wire up the
configuration for the shipper store, see
https://github.com/grafana/loki/blob/1a508b0aa/pkg/loki/modules.go#L864-L867

At this time, the index gateway ring manager wasn't initialized yet,
leading to a `nil` pointer dereference.

This PR fixes the issue by adding the index gateway ring as dependency
of the bloom store so it gets initialised first.

Signed-off-by: Christian Haudum <christian.haudum@gmail.com>
@chaudum
chaudum marked this pull request as ready for review July 9, 2024 11:08
@chaudum
chaudum requested a review from a team as a code owner July 9, 2024 11:08
@chaudum chaudum added type/bug Somehing is not working as expected backport k209 backport k210 labels Jul 9, 2024
@grafanabot

Copy link
Copy Markdown
Contributor

This PR must be merged before a backport PR will be created.

2 similar comments
@grafanabot

Copy link
Copy Markdown
Contributor

This PR must be merged before a backport PR will be created.

@grafanabot

Copy link
Copy Markdown
Contributor

This PR must be merged before a backport PR will be created.

@chaudum
chaudum merged commit 5f4b8fc into main Jul 9, 2024
@chaudum
chaudum deleted the chaudum/fix-init-bloomstore-panics branch July 9, 2024 11:13
grafanabot pushed a commit that referenced this pull request Jul 9, 2024
The initialisation of the `BloomStore` service failed with a panic if the index gateways were configured to use `ring` mode.

This happened, because the bloom store requires to wire up the configuration for the shipper store, see
https://github.com/grafana/loki/blob/1a508b0aa/pkg/loki/modules.go#L864-L867

At this time, the index gateway ring manager wasn't initialized yet, leading to a `nil` pointer dereference.

This PR fixes the issue by adding the index gateway ring as dependency of the bloom store so it gets initialised first.

Signed-off-by: Christian Haudum <christian.haudum@gmail.com>
(cherry picked from commit 5f4b8fc)
grafanabot pushed a commit that referenced this pull request Jul 9, 2024
The initialisation of the `BloomStore` service failed with a panic if the index gateways were configured to use `ring` mode.

This happened, because the bloom store requires to wire up the configuration for the shipper store, see
https://github.com/grafana/loki/blob/1a508b0aa/pkg/loki/modules.go#L864-L867

At this time, the index gateway ring manager wasn't initialized yet, leading to a `nil` pointer dereference.

This PR fixes the issue by adding the index gateway ring as dependency of the bloom store so it gets initialised first.

Signed-off-by: Christian Haudum <christian.haudum@gmail.com>
(cherry picked from commit 5f4b8fc)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backport k209 backport k210 size/XS type/bug Somehing is not working as expected

3 participants