zhuqi-lucas commented on code in PR #7714:
URL: https://github.com/apache/arrow-rs/pull/7714#discussion_r2159029611
##########
parquet/src/arrow/arrow_writer/mod.rs:
##########
@@ -320,14 +320,21 @@ impl<W: Write + Send> ArrowWriter<W> {
}
/// Returns a reference to the underlying writer.
+ ///
+ /// **Warning**: if you write directly to this writer, you will skip
Review Comment:
Thank you @alamb for review, because the failed example use the inner() to
call write_all(), so i also add warning here, here is the failed example:
https://github.com/apache/datafusion/pull/16395#discussion_r2148133565
The low level we called by inner(), it has write_all api:
```rust
impl<W: Write> BufWriter<W> {
#[inline]
fn write_all(&mut self, buf: &[u8]) -> io::Result<()> {
// Use < instead of <= to avoid a needless trip through the buffer
in some cases.
// See `write_all_cold` for details.
if buf.len() < self.spare_capacity() {
// SAFETY: safe by above conditional.
unsafe {
self.write_to_buffer_unchecked(buf);
}
Ok(())
} else {
self.write_all_cold(buf)
}
}
...
```
--
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]