[CORE] Fix multi-key DPP support in ColumnarSubqueryBroadcastExec#11795
Draft
yaooqinn wants to merge 1 commit intoapache:mainfrom
Draft
[CORE] Fix multi-key DPP support in ColumnarSubqueryBroadcastExec#11795yaooqinn wants to merge 1 commit intoapache:mainfrom
yaooqinn wants to merge 1 commit intoapache:mainfrom
Conversation
|
Run Gluten Clickhouse CI on x86 |
0c33816 to
9e88e1e
Compare
|
Run Gluten Clickhouse CI on x86 |
9e88e1e to
f8cc6bb
Compare
|
Run Gluten Clickhouse CI on x86 |
Fix the BuildSideRelation path to handle multiple filtering keys instead of only using the first key (indices(0)). This resolves the TODO/FIXME that caused multi-key DPP to silently drop extra keys. For single-key DPP, behavior is unchanged. For multi-key DPP (SPARK-46946), all keys are now projected via CreateStruct, matching the HashedRelation path's multi-key support. This fixes potential DPP loss in queries like TPC-DS q23a/q23b that have multi-column partition join keys.
f8cc6bb to
fc1fe80
Compare
|
Run Gluten Clickhouse CI on x86 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What changes were proposed in this pull request?
Fix the
BuildSideRelationpath inColumnarSubqueryBroadcastExecto handle multiple filtering keys instead of only using the first key (indices(0)).Problem
The existing code had a
TODO(): fixmeat line 92 that only usedindices(0), silently dropping extra keys when Spark 4.0 generates multi-key DPP subqueries (SPARK-46946):This caused multi-key Dynamic Partition Pruning to be silently ineffective — only the first key was used for partition filtering.
Fix
CreateStruct, matching theHashedRelationpath's multi-key supportThis resolves potential DPP loss in queries like TPC-DS q23a/q23b with multi-column partition join keys.
How was this patch tested?
Existing CI tests. The multi-key DPP path is exercised by Spark 4.0's DPP test suites.