Skip to content

Preserve logical CASE field metadata on DF55 base - #126

Merged
osipovartem merged 12 commits into
embucket-sync-df55.0.0from
df55-case-field-metadata-base
Oct 9, 2026
Merged

osipovartem merged 12 commits into
embucket-sync-df55.0.0from
df55-case-field-metadata-base

Conversation

@osipovartem

@osipovartem osipovartem commented Oct 9, 2026 •

Copy link
Copy Markdown
Collaborator

Summary

Port the logical CASE field-metadata change from apache/datafusion#26145 onto embucket-sync-df55.0.0. Matching result branches retain Arrow field metadata; incompatible branches conservatively clear it. The ordinary unmarked CASE fast path remains unchanged.

The earlier fork PR #122 was merged into a CSV feature branch, not the DF55 base. This branch carries only the logical CASE commits onto the current base; it does not bring over that branch's CSV changes.

Validation

  • cargo +stable test -p datafusion-expr --lib --quiet: 255 passed.
  • cargo +stable fmt --all --check and git diff --check: passed.
  • cargo +stable test -p datafusion-optimizer --lib --quiet: 761 passed.
  • cargo +stable test -p datafusion --test core_integration test_sql_case_field_metadata: passed.
  • Independent read-only review approved correctness, regressions, performance, API compatibility, and tests for this isolated port.

Integration

Merge this before physical CASE PR #125, then run the combined metadata.slt regression there. Rustice is separately testing both changes on its pinned DataFusion branch.

@osipovartem
osipovartem marked this pull request as ready for review October 9, 2026 15:03
@osipovartem
osipovartem merged commit 7d98fee into embucket-sync-df55.0.0 Oct 9, 2026
20 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant