The GitHub Actions job "CI" on iceberg-rust.git/main has succeeded.
Run started by GitHub user liurenjie1024 (triggered by liurenjie1024).

Head commit for run:
ee21563c2032948f636eae84870f317a0b299a05 / Matt Butrovich 
<[email protected]>
perf(reader): Fast path ArrowReader::read when concurrency is 1 to avoid waker 
churn and add determinism to FileScanTask processing (#2020)

## Which issue does this PR close?

- N/A.

## What changes are included in this PR?

- Due to the way Comet maps DataFusion `SessionContext`, the tokio
runtime, and Spark Tasks, we see frequent waker churn when concurrency
is set to 1 in the `ArrowReader`. This adds a fast path that does not
use `try_flatten_unordered` and its internal `replace_waker` calls.
- This also prevents tasks from being reordered at runtime. Several
Iceberg Java tests expect specific query results without an `ORDER BY`,
so this enables those tests to keep working when concurrency is set to
1.

See https://github.com/apache/datafusion-comet/pull/3051 and 
 
<img width="3804" height="754" alt="flamegraph"
src="https://github.com/user-attachments/assets/26b93e85-5835-4bf4-b7f1-b136face940d";
/>

## Are these changes tested?


New test for determinism, also running the entire Iceberg Java Spark
suite via Comet in https://github.com/apache/datafusion-comet/pull/3051.

---------

Co-authored-by: Renjie Liu <[email protected]>

Report URL: https://github.com/apache/iceberg-rust/actions/runs/21156355585

With regards,
GitHub Actions via GitBox

Reply via email to