fresh-borzoni commented on code in PR #560:
URL: https://github.com/apache/fluss-rust/pull/560#discussion_r3298218506
##########
crates/fluss/src/row/column.rs:
##########
@@ -661,25 +661,19 @@ impl InternalRow for ColumnarRow {
};
let column = self.column(pos)?;
- let element_field = match column.data_type() {
- ArrowDataType::List(field) => field,
+ match column.data_type() {
+ ArrowDataType::List(_) => {}
other => {
return Err(IllegalArgument {
message: format!("expected List array at position {pos},
got {other:?}"),
});
}
- };
-
- let actual_element_type = from_arrow_field(element_field)?;
- if actual_element_type != *element_fluss_type {
- return Err(IllegalArgument {
- message: format!(
- "Arrow list element type {:?} does not match expected
Fluss type {:?}",
- actual_element_type, element_fluss_type
- ),
- });
}
+ // `to_arrow_type` is lossy (e.g. TIMESTAMP_LTZ → plain Arrow
Timestamp);
Review Comment:
Intentional. The old strict check tripped on lossy Arrow round-trips (e.g.
TIMESTAMP_LTZ -> plain Arrow Timestamp) and rejected valid schemas.
Real shape mismatches still error from the per-element conversion below
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]