Yao-MR opened a new pull request, #12004:
URL: https://github.com/apache/gluten/pull/12004
<!--
Thank you for submitting a pull request! Here are some tips:
1. For first-time contributors, please read our contributing guide:
https://github.com/apache/gluten/blob/main/CONTRIBUTING.md
2. If necessary, create a GitHub issue for discussion beforehand to avoid
duplicate work.
3. If the PR is specific to a single backend, include [VL] or [CH] in the PR
title to indicate the
Velox or ClickHouse backend, respectively.
4. If the PR is not ready for review, please mark it as a draft.
-->
## What changes are proposed in this pull request?
For dual-mode parents that support both columnar and row-based execution,
Gluten previously let the child convention follow the parent's output
convention by default. When the parent was required to produce rows, this could
incorrectly push a row requirement down to its children even though the parent
could still consume batch input and satisfy the row output requirement by
itself.
This PR changes dual-mode parents to keep a batch child convention under a
row output requirement, which aligns transition insertion with Spark behavior
and avoids unnecessary row transitions.
The change is applied in both the plan-side child convention derivation and
the transition convention derivation so the behavior stays consistent.
This PR also:
- adds transition tests to verify that a dual-mode parent keeps a columnar
child for row output;
- adds coverage to verify that a row child is converted to batch when
required by a dual-mode parent; and
- re-enables `GlutenColumnarRulesSuite` on Spark 4.1.
<!--
Provide a clear and concise description of the changes introduced in this PR.
Ensure the PR description aligns with the code changes, especially after
updates.
If applicable, include "Fixes #<GitHub_Issue_ID>" to automatically close the
corresponding issue
when the PR is merged.
-->
## How was this patch tested?
- Added transition tests for dual-mode parent convention handling under row
output requirements.
- Re-enabled `GlutenColumnarRulesSuite` on Spark 4.1 to cover the fixed
behavior.
issue: https://github.com/apache/gluten/issues/11920
<!--
Describe how the changes were tested, if applicable.
Include new tests to validate the functionality, if necessary.
For UI-related changes, attach screenshots to demonstrate the updates.
-->
## Was this patch authored or co-authored using generative AI tooling?
<!--
If generative AI tooling has been used in the process of authoring this
patch, please include the
phrase: 'Generated-by: ' followed by the name of the tool and its version.
If no, write 'No'.
Please refer to the [ASF Generative Tooling
Guidance](https://www.apache.org/legal/generative-tooling.html) for details.
-->
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]