houqp commented on a change in pull request #9534:
URL: https://github.com/apache/arrow/pull/9534#discussion_r579867558



##########
File path: rust/arrow/src/csv/reader.rs
##########
@@ -99,7 +99,27 @@ fn infer_field_schema(string: &str) -> DataType {
 /// If `max_read_records` is not set, the whole file is read to infer its 
schema.
 ///
 /// Return infered schema and number of records used for inference.
-fn infer_file_schema<R: Read + Seek>(
+pub fn infer_file_schema<R: Read + Seek>(
+    reader: &mut R,
+    delimiter: u8,
+    max_read_records: Option<usize>,
+    has_header: bool,
+) -> Result<(Schema, usize)> {
+    let (schema, records_count) =
+        infer_schema_from_reader(reader, delimiter, max_read_records, 
has_header)?;
+    // return the reader seek back to the start

Review comment:
       While documenting this behavior, I think it's not the right thing to do 
to always rewind offset back to 0. Shouldn't we rewind to whatever offset it 
was at before we read any data to infer the schema?




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

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to