-
Notifications
You must be signed in to change notification settings - Fork 3.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Bloom/running #11918
Bloom/running #11918
Conversation
Signed-off-by: Owen Diehl <[email protected]>
Signed-off-by: Owen Diehl <[email protected]>
Signed-off-by: Owen Diehl <[email protected]>
Signed-off-by: Owen Diehl <[email protected]>
Signed-off-by: Owen Diehl <[email protected]>
Signed-off-by: Owen Diehl <[email protected]>
uses readonly store only when bloomcompactor is target, not a dependency Signed-off-by: Owen Diehl <[email protected]>
Signed-off-by: Owen Diehl <[email protected]>
Signed-off-by: Owen Diehl <[email protected]>
Signed-off-by: Owen Diehl <[email protected]>
Signed-off-by: Owen Diehl <[email protected]>
Signed-off-by: Owen Diehl <[email protected]>
Signed-off-by: Owen Diehl <[email protected]>
Signed-off-by: Owen Diehl <[email protected]>
Signed-off-by: Owen Diehl <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lgtm
@@ -648,7 +651,7 @@ func (t *Loki) setupModuleManager() error { | |||
Write: {Ingester, Distributor}, | |||
Backend: {QueryScheduler, Ruler, Compactor, IndexGateway, BloomGateway, BloomCompactor}, | |||
|
|||
All: {QueryScheduler, QueryFrontend, Querier, Ingester, Distributor, Ruler, Compactor}, | |||
All: {QueryScheduler, QueryFrontend, Querier, Ingester, Distributor, Ruler, Compactor, BloomCompactor}, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Up for discussion, but I don't think that we want to include the bloom compactor in the all
target.
For testing, it comes handy, I understand.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't think users of the monolith mode will benefit from building blooms significantly, right? In addition to that, it will increase resource usage and operational burden. - So I think we should remove it, or add a feature flag for that which defaults to false (e.g. enable_bloom_compactor_all_target
).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fair points all around, but we can leave it to enable better testing then remove it prior to release.
pkg/bloomcompactor/spec.go
Outdated
@@ -313,6 +311,12 @@ func (b *batchedLoader) Next() bool { | |||
} | |||
|
|||
b.batch, b.err = next.fetcher.FetchChunks(b.ctx, toFetch) | |||
return b.prepNext() |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
FetchChunks may return an error, then len(b.batch)
is 0, which will cause an out of bounds error in prepNext()
.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good catch, will fix. Thanks
Signed-off-by: Christian Haudum <[email protected]>
Signed-off-by: Owen Diehl <[email protected]>
Signed-off-by: Owen Diehl <[email protected]>
Includes a few small fixes in order to get the compactor running, including * Wires up i/o from `v1` pkg and the `bloomshipper` pkg in order to archive+write blocks remotely after building * config error handling * fix an error iterating chunks * handles gzipping when loading tsdbs from storage * bypasses internal cache in `BloomTSDBStore`'s internal `indexshipper/storage.Client` to get up to date results, which is easier for prototyping * `ClosableReadSeekerAdapter` --------- Signed-off-by: Christian Haudum <[email protected]> Signed-off-by: Owen Diehl <[email protected]> Co-authored-by: Christian Haudum <[email protected]>
Includes a few small fixes in order to get the compactor running, including
v1
pkg and thebloomshipper
pkg in order to archive+write blocks remotely after buildingBloomTSDBStore
's internalindexshipper/storage.Client
to get up to date results, which is easier for prototypingClosableReadSeekerAdapter