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

fix issue with ScanQueryFrameProcessor cursor build not adjusting intervals #17168

Merged

Conversation

clintropolis
Copy link
Member

During the refactor of #16533, accidentally lost the calls to query.withQuerySegmentSpec in ScanQueryFrameProcessor here and here

@github-actions github-actions bot added Area - Batch Ingestion Area - MSQ For multi stage queries - https://github.com/apache/druid/issues/12262 labels Sep 26, 2024
@clintropolis clintropolis added this to the 31.0.0 milestone Sep 26, 2024
@cryptoe cryptoe merged commit 6ee9e42 into apache:master Sep 26, 2024
56 checks passed
cursorFactory.makeCursorHolder(ScanQueryEngine.makeCursorBuildSpec(query, null));
cursorFactory.makeCursorHolder(
ScanQueryEngine.makeCursorBuildSpec(
query.withQuerySegmentSpec(new MultipleIntervalSegmentSpec(Intervals.ONLY_ETERNITY)),
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The old code did this too, but, it seems like it'd be incorrect if the query had an intervals filter on the __time column. I am not sure how (or if) this can actually happen, but I wonder if it could be made to happen by doing a query like this:

SELECT * FROM (SELECT * FROM "wikipedia" ORDER BY countryName LIMIT 100)
WHERE TIME_IN_INTERVAL(__time, '2020/P1D') OR TIME_IN_INTERVAL(__time, '2021/P1D')

I tried doing that just now, and got a QueryNotSupported error, which seems like a different problem. But what if it was supported?

IMO, here we should add a validation here to check that query has an eternity interval, rather than overriding it to be eternity. If it was anything other than eternity, this wouldn't be correct.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

PR for fixing this: #17173

@clintropolis clintropolis deleted the fix-scan-frame-processor-cursor-intervals branch September 26, 2024 19:34
kfaraz pushed a commit to kfaraz/druid that referenced this pull request Oct 4, 2024
…ervals (apache#17168)

* fix issue with ScanQueryFrameProcessor cursor build not adjusting intervals

* all hail the robot overlords

* style bot
kfaraz added a commit that referenced this pull request Oct 4, 2024
…g. (#17152) (#17168) (#17245)

* ScanQueryFrameProcessor: Close CursorHolders as we go along. (#17152)
* fix issue with ScanQueryFrameProcessor cursor build not adjusting intervals (#17168)
---------
Co-authored-by: Gian Merlino <[email protected]>
Co-authored-by: Clint Wylie <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Area - Batch Ingestion Area - MSQ For multi stage queries - https://github.com/apache/druid/issues/12262 Bug
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants