wangyong9999 commented on code in PR #314:
URL: https://github.com/apache/paimon-cpp/pull/314#discussion_r3996344693
##########
src/paimon/format/parquet/parquet_input_stream.h:
##########
@@ -103,24 +106,89 @@ class ParquetInputStream : public ArrowInputStreamAdapter
{
int64_t size,
ArrowInputStreamAdapter::ReadAt(position, nbytes,
segment.MutableData()));
if (size != nbytes) {
- return Status::IOError("Short read of Parquet page index");
+ return Status::IOError("Short read of Parquet cached
range");
}
return std::make_shared<CacheValue>(segment, CacheCallback());
});
if (!value.ok()) {
return ToArrowStatus(value.status());
}
if (!value.value() || value.value()->GetSegment().Size() != nbytes) {
- return arrow::Status::IOError("Invalid Parquet page-index cache
value");
+ return arrow::Status::IOError("Invalid Parquet cached range
value");
}
std::memcpy(out, value.value()->GetSegment().Data(), nbytes);
return nbytes;
}
+ arrow::Future<std::shared_ptr<arrow::Buffer>> ReadAsync(const
arrow::io::IOContext& io_context,
+ int64_t position,
+ int64_t nbytes)
override {
+ if (!cache_data_ || !cache_ || file_uri_.empty() || position < 0 ||
nbytes <= 0 ||
Review Comment:
Confirmed at 0bc1b4fb: ParquetInputStream is identical to current main,
including removal of the added ReadAsync override. The duplicate
eligibility/key logic is gone, so no replacement helper is needed. Resolving
this thread.
--
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]