Skip to content

GH-3828: [1.18.x] Preserve column paths in dictionary lookup - #3872

Open
manuzhang wants to merge 1 commit into
apache:parquet-1.18.xfrom
manuzhang:codex/backport-3830-1.18.x
Open

manuzhang wants to merge 1 commit into
apache:parquet-1.18.xfrom
manuzhang:codex/backport-3830-1.18.x

Conversation

@manuzhang

Copy link
Copy Markdown
Member

Rationale for this change

Backport #3830 to parquet-1.18.x to prevent dictionary lookup collisions between literal dotted names and nested column paths.

What changes are included in this PR?

Cherry-picks bca2eaea, retaining ColumnPath keys for dictionary metadata and caches plus the upstream regression.

Are these changes tested?

Passed: Java 17 / Thrift 0.23.0 focused reactor verification for TestParquetWriter (32 tests, 0 skipped); Spotless and git diff --check. Broad integration tests and Javadocs were skipped.

Are there any user-facing changes?

Dictionary pruning uses the correct column dictionary for colliding dot-string paths. No file-format change.

Backport apache#3830. Keep component paths in dictionary metadata and cache keys to avoid collisions between dotted and nested column names.

(cherry picked from commit bca2eae)

Co-authored-by: Codex <codex@openai.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants