fix: preserve dotted column relation qualifiers - #25334
AnuragRaut08 wants to merge 1 commit into
Conversation
|
Thank you for opening this pull request! Reviewer note: cargo-semver-checks reported the current version number is not SemVer-compatible with the changes in this pull request (compared against the base branch). Details |
e3b61d9 to
7d2603c
Compare
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #25334 +/- ##
==========================================
- Coverage 81.92% 81.92% -0.01%
==========================================
Files 1135 1135
Lines 427573 427637 +64
Branches 427573 427637 +64
==========================================
+ Hits 350279 350327 +48
- Misses 56367 56383 +16
Partials 20927 20927 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
|
The The |
kosiew
left a comment
There was a problem hiding this comment.
Thanks for working on this. The protobuf change preserves dotted qualifier boundaries while keeping the legacy relation field for compatibility. I only have one non-blocking test suggestion.
7d2603c to
9e15374
Compare
Which issue does this PR close?
.are silently corrupted on round-trip #24776.Rationale for this change
ColumnRelationcurrently round-tripsTableReferencequalifiers through a single dotted string. When a catalog, schema, or table identifier itself contains., the qualifier boundaries are lost during deserialization, causing the reconstructedTableReferenceto differ from the original.For example, a schema named
my.schemacan be incorrectly interpreted as separate qualifier components after a protobuf round-trip.What changes are included in this PR?
partsfield toColumnRelation.TableReferencecomponents usingTableReference::to_vec().partsrepresentation when deserializing.relationstring for legacy protobuf messages.What is the testing strategy for this PR?
Added regression tests covering the
Column -> protobuf -> TableReferenceround-trip for:.relation-only protobuf messagesAlso ran:
cargo test -p datafusion-proto-common column_relation -- --nocapturecargo test -p datafusion-proto-commonAll tests pass.
Are there any user-facing changes?
No.