Commits


Carlos O'Ryan authored and GitHub committed 771c37aab87
GH-34051: [C++] GcsFileSystem lazily starts sequential reads (#34052) `OpenInputFile()` returns a `io::RandomAccessFile` which supports sequential reads as well as random access reads. The previous implementation eagerly started a sequential read, but many applications do not use that aspect of the API. Because GCS has fairly high latency, this can slow down applications that are only going to read data using `ReadAt()`. This includes applications using Parquet files via PyArrow. Fixes #34051 ### What changes are included in this PR? Change the GcsFileSystem class to lazily start the download used to implement the `io::InputFile` APIs. ### Are these changes tested? I think so: the existing tests cover the affected functions. ### Are there any user-facing changes? No. * Closes: #34051 Authored-by: Carlos O'Ryan <coryan@google.com> Signed-off-by: Sutou Kouhei <kou@clear-code.com>