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
"Aggressive" optimizations mode #66
Comments
This makes sense. I did not understand why propagating labels across bin-ops is a breaking change though. We might want to document this well once we implement it. |
Because apparently there are "storages" which return data that does not strictly match the given matchers 😄 however, I think it's probably such a rare use-case that we could enable such optimizations by default. |
Makes sense to have this enabled by default in Thanos at least. It shouldn't be too hard to implement, we just need to handle the vector matching in cases like: |
Happy to configure different optimizers in future. But it should case driven. I can't see anything "too aggressive" so far 🤔 |
There are some optimizations that are not done in Prometheus PromQL engine due to backward compatibility. However, those use cases that they are trying not to break only really matter to a few percent of the users. Thus, I suggest adding some kind of new parameter to the engine which would add an optimization pass to the given PromQL expression. The results/behavior wouldn't be strictly compatible with the original PromQL but I think that doesn't matter to Thanos/Cortex/... users anyway.
Some candidates:
The text was updated successfully, but these errors were encountered: