Skip to content
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

Query splitting seems to break "all" grain when multiple disjoint intervals specified #72

Closed
cdeszaq opened this issue Oct 19, 2016 · 2 comments
Labels

Comments

@cdeszaq
Copy link
Collaborator

cdeszaq commented Oct 19, 2016

The query generated and shown with format=debug looks correct, and it returns a single time bucket when run directly against Druid, but when the Fili response comes back, you get 2 time buckets for the "all" query, which should have been 1.

This is also borne out in the logs, which show that a query split is happening, even though "all" grain queries should never be split.

@cdeszaq cdeszaq added the BUG label Oct 19, 2016
@michael-mclawhorn
Copy link
Contributor

The conceptual error is here:

https://github.com/yahoo/fili/blob/master/fili-core/src/main/java/com/yahoo/bard/webservice/web/handlers/SplitQueryRequestHandler.java#L66

The expectedIntervals is flattening the concept of a bucket with an interval. Under any TimeGrain, intervals must be non disjoint at the resolution of buckets. But under the all granularity disjoint intervals can share the same bucket.

Either there needs to be a bailout special case for 'all' here, or the splitter has be be layered so it can handle buckets which are not expressible in a single interval.

@cdeszaq
Copy link
Collaborator Author

cdeszaq commented Oct 24, 2016

Fixed by #75

@cdeszaq cdeszaq closed this as completed Oct 24, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants