fresh-borzoni opened a new issue, #543:
URL: https://github.com/apache/fluss-rust/issues/543

   ### Search before asking
   
   - [x] I searched in the 
[issues](https://github.com/apache/fluss-rust/issues) and found nothing similar.
   
   
   ### Description
   
   The Rust scan path skips Java's typed-vector layer (VectorizedColumnBatch / 
ArrowRowColumnVector). Two consequences:
    * Top-level accessors do column.data_type() + downcast on every call.
    * Nested get_row eagerly materializes the whole struct and copies every 
leaf string and blob.
   
   Java does the type dispatch once at construction and accessors are zero-copy.
   * typed dispatch: Add a TypedColumn enum + TypedBatch built once per 
ArrowReader from (RecordBatch, RowType), then ColumnarRow accessors become 
single-arm matches.
   * lazy nested ROW:  with recursive TypedColumn::Row, the materialized nested 
GenericRow can hold borrowed Cows over Arrow buffers - no leaf copy. We wish 
keep the current trait + parameterize ColumnarRow with a lifetime most probably.
   
   ### Willingness to contribute
   
   - [x] I'm willing to submit a PR!


-- 
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]

Reply via email to