Fix typo in complex schema evolution - #111489
Conversation
|
Workflow [PR], commit [9bae326] Summary: ❌
AI ReviewSummaryThis PR fixes one bad variant assignment in Iceberg complex schema evolution and adds a regression test for nested PR Metadata
Findings
Tests
Final VerdictStatus: |
| else if (current_tuple[subfield_index].tryGet(tmp_node_map)) | ||
| { | ||
| current_node = std::move(tmp_node_array); | ||
| current_node = std::move(tmp_node_map); |
There was a problem hiding this comment.
Fixing the ARRAY branch here is necessary, but it still leaves deeper descendants under a map value broken. In traverseAllPaths (ComplexTypeSchemaProcessorFunctions.cpp:171-190) the MAP case pushes next_val itself, i.e. the whole (key, value) tuple, instead of next_val.safeGet<Tuple>()[1]; a path such as x.element.value.element... or x.element.value.value... then reaches the next ARRAY/MAP step with a Tuple and still throws before transform runs. Please mirror the MAP handling there as well and add a regression where the map value is an ARRAY or MAP, not just a STRUCT.
LLVM Coverage Report
Changed lines: Changed C/C++ lines covered: 0/2 (0.00%) · Uncovered code |
Backport #111489 to 26.6: Fix typo in complex schema evolution
Backport #111489 to 26.4: Fix typo in complex schema evolution
Backport #111489 to 26.5: Fix typo in complex schema evolution
Backport #111489 to 26.3: Fix typo in complex schema evolution
Backport #111489 to 26.7: Fix typo in complex schema evolution
Changelog category (leave one):
Changelog entry (a user-readable short description of the changes that goes into CHANGELOG.md):
Fix typo in complex schema evolution
Version info
26.7.1.1378(included in26.7and later)26.7.2.48,26.6.2.105,26.5.6.92,26.4.5.167,26.3.17.93