fix(query): return result projection mismatch error#19602
fix(query): return result projection mismatch error#19602sundy-li wants to merge 3 commits intodatabendlabs:mainfrom
Conversation
sundy-li
left a comment
There was a problem hiding this comment.
The runtime change is reasonable, but the new query-level regression does not cover it. This still needs an end-to-end test that actually executes one of the failing queries and verifies we return DATA_STRUCT_MISS_MATCH instead of hitting the old assertion path.
|
Review note: the runtime change in |
| unreachable!("expected query plan"); | ||
| }; | ||
|
|
||
| for column in &mut bind_context.columns { |
There was a problem hiding this comment.
This loop manufactures the mismatch by mutating bind_context after planning, so the test only proves the new guard rejects corrupted state. It still does not reproduce the production bug from #19568, where a real query loses nullability somewhere between planning and pipeline rendering. Since the PR still says Fixes #19568, please replace or supplement this with a genuine end-to-end reproducer for the reported query shape, or include the actual nullable-propagation fix instead of only the defensive error path.
|
Blocking point: this PR adds a safer |
|
Blocking review:
|
|
Addressed the blocking review in |
I hereby agree to the terms of the CLA available at: https://docs.databend.com/dev/policies/cla/
Summary
DataStructMissMatcherror instead of panicking when the rendered result projection schema disagrees with the bound result columns#19568Tests
Type of change
Related to #19568
This change is