This behavior was observed in the Parquet Rust file reader (parquet/src/util/io.rs).
Pull request: https://github.com/apache/arrow/pull/6280
From the Rust documentation for BufReader:
"Seeking always discards the internal buffer, even if the seek position would otherwise fall within it. This guarantees that calling .into_inner() immediately after a seek yields the underlying reader at the same position."