Skip to content

Commit db3c6a0

Browse files
nuno-fariakosiewtimsaucer
authored
Upgrade to Datafusion 51 (#1311)
* Upgrade to Datafusion 51 * Fix clippy * Upgrade to Datafusion 51 * Fix clippy * Refactor test_arrow_c_stream_interrupted to handle exceptions in a separate thread * Improve exception handling in wait_for_future Updated wait_for_future to surface pending Python exceptions by executing bytecode during signal checks, ensuring that asynchronous interrupts are processed promptly. Enhanced PartitionedDataFrameStreamReader to cancel remaining partition streams on projection errors or Python interrupts, allowing for clean iteration stops. Added regression tests to validate interrupted Arrow C stream reads and improve timing for RecordBatchReader.read_all cancellations. * Refactor signal checking in future collection to simplify error handling * Simplify KeyboardInterrupt check in test_arrow_c_stream_interrupted * rm test_record_batch_reader_interrupt_exits_quickly * Refactor test_arrow_c_stream_interrupted to improve exception handling and readability * Improve exception handling in test_arrow_c_stream_interrupted to check for KeyboardInterrupt * Add comment - handle KeyboardInterrupt more effectively * Remove unnecessary stream cancellation on error in PartitionedDataFrameStreamReader * Add jupyter notebook for test * Revert "Add jupyter notebook for test" This reverts commit 784929d. * Simplify error handling in PartitionedDataFrameStreamReader * Fix ruff warnings * Fix ruff warnings * Update src/utils.rs Co-authored-by: Tim Saucer <timsaucer@gmail.com> * Fix clippy --------- Co-authored-by: Siew Kam Onn <kosiew@gmail.com> Co-authored-by: Tim Saucer <timsaucer@gmail.com>
1 parent c141dd3 commit db3c6a0

32 files changed

+974
-927
lines changed

Cargo.lock

Lines changed: 403 additions & 398 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -48,20 +48,20 @@ tokio = { version = "1.47", features = [
4848
"rt-multi-thread",
4949
"sync",
5050
] }
51-
pyo3 = { version = "0.25", features = [
51+
pyo3 = { version = "0.26", features = [
5252
"extension-module",
5353
"abi3",
5454
"abi3-py310",
5555
] }
56-
pyo3-async-runtimes = { version = "0.25", features = ["tokio-runtime"] }
57-
pyo3-log = "0.12.4"
58-
arrow = { version = "56", features = ["pyarrow"] }
59-
arrow-select = { version = "56" }
60-
datafusion = { version = "50", features = ["avro", "unicode_expressions"] }
61-
datafusion-substrait = { version = "50", optional = true }
62-
datafusion-proto = { version = "50" }
63-
datafusion-ffi = { version = "50" }
64-
prost = "0.13.1" # keep in line with `datafusion-substrait`
56+
pyo3-async-runtimes = { version = "0.26", features = ["tokio-runtime"] }
57+
pyo3-log = "0.13.2"
58+
arrow = { version = "57", features = ["pyarrow"] }
59+
arrow-select = { version = "57" }
60+
datafusion = { version = "51", features = ["avro", "unicode_expressions"] }
61+
datafusion-substrait = { version = "51", optional = true }
62+
datafusion-proto = { version = "51" }
63+
datafusion-ffi = { version = "51" }
64+
prost = "0.14.1" # keep in line with `datafusion-substrait`
6565
uuid = { version = "1.18", features = ["v4"] }
6666
mimalloc = { version = "0.1", optional = true, default-features = false, features = [
6767
"local_dynamic_tls",
@@ -80,8 +80,8 @@ log = "0.4.27"
8080
parking_lot = "0.12"
8181

8282
[build-dependencies]
83-
prost-types = "0.13.1" # keep in line with `datafusion-substrait`
84-
pyo3-build-config = "0.25"
83+
prost-types = "0.14.1" # keep in line with `datafusion-substrait`
84+
pyo3-build-config = "0.26"
8585

8686
[lib]
8787
name = "datafusion_python"

0 commit comments

Comments
 (0)