Skip to content

[AURON #1533] Implement native function of lpad, rpad.#1534

Merged
richox merged 1 commit intoapache:masterfrom
slfan1989:auron-1533
Oct 29, 2025
Merged

[AURON #1533] Implement native function of lpad, rpad.#1534
richox merged 1 commit intoapache:masterfrom
slfan1989:auron-1533

Conversation

@slfan1989
Copy link
Contributor

@slfan1989 slfan1989 commented Oct 29, 2025

Which issue does this PR close?

Closes #1533.

Rationale for this change

  • lpad/rpad are widely used for ID zero-padding, fixed-width alignment, and reporting.
  • Without native support they execute on the JVM side, incurring serialization/cross-boundary overhead and preventing full pushdown.
  • Implementing native lpad/rpad improves performance and keeps behavior aligned with Spark (including Unicode-safe, character-level semantics).

What changes are included in this PR?

Catalyst → Auron mapping

  • Add cases in NativeConverters.convertExprWithFallback:
  • StringLPad → StringLpad (extended/native scalar function)
  • StringRPad → StringRpad

Are there any user-facing changes?

Yes (additive): Users can call lpad/rpad and have them executed natively by Auron.

How was this patch tested?

Junit Test.

Signed-off-by: slfan1989 <slfan1989@apache.org>
@github-actions github-actions bot added the spark label Oct 29, 2025
@slfan1989 slfan1989 marked this pull request as ready for review October 29, 2025 03:21
@richox richox merged commit 95cfd12 into apache:master Oct 29, 2025
98 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Implement native function of lpad, rpad

2 participants