From 658ecd77a7c5edd74197ccac3db25f9cd41c85c5 Mon Sep 17 00:00:00 2001 From: osipovartem Date: Thu, 8 Oct 2026 17:09:08 +0300 Subject: [PATCH 1/2] Test ordered Boolean CSV inference across DataFusion chunks --- Cargo.lock | 38 ++++++++++---------- Cargo.toml | 18 +++++----- datafusion/datasource-csv/src/file_format.rs | 3 ++ 3 files changed, 31 insertions(+), 28 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index d39c08372a31f..74ec53f9f922f 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -165,7 +165,7 @@ checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50" [[package]] name = "arrow" version = "59.2.0" -source = "git+https://github.com/Embucket/arrow-rs.git?rev=4e743e5dfb8b2b7aba69dade4d887418d01520b5#4e743e5dfb8b2b7aba69dade4d887418d01520b5" +source = "git+https://github.com/Embucket/arrow-rs.git?rev=5d211125b8e8a5784f2caf606cdf88684dec30a5#5d211125b8e8a5784f2caf606cdf88684dec30a5" dependencies = [ "arrow-arith", "arrow-array", @@ -187,7 +187,7 @@ dependencies = [ [[package]] name = "arrow-arith" version = "59.2.0" -source = "git+https://github.com/Embucket/arrow-rs.git?rev=4e743e5dfb8b2b7aba69dade4d887418d01520b5#4e743e5dfb8b2b7aba69dade4d887418d01520b5" +source = "git+https://github.com/Embucket/arrow-rs.git?rev=5d211125b8e8a5784f2caf606cdf88684dec30a5#5d211125b8e8a5784f2caf606cdf88684dec30a5" dependencies = [ "arrow-array", "arrow-buffer", @@ -200,7 +200,7 @@ dependencies = [ [[package]] name = "arrow-array" version = "59.2.0" -source = "git+https://github.com/Embucket/arrow-rs.git?rev=4e743e5dfb8b2b7aba69dade4d887418d01520b5#4e743e5dfb8b2b7aba69dade4d887418d01520b5" +source = "git+https://github.com/Embucket/arrow-rs.git?rev=5d211125b8e8a5784f2caf606cdf88684dec30a5#5d211125b8e8a5784f2caf606cdf88684dec30a5" dependencies = [ "ahash", "arrow-buffer", @@ -219,7 +219,7 @@ dependencies = [ [[package]] name = "arrow-avro" version = "59.2.0" -source = "git+https://github.com/Embucket/arrow-rs.git?rev=4e743e5dfb8b2b7aba69dade4d887418d01520b5#4e743e5dfb8b2b7aba69dade4d887418d01520b5" +source = "git+https://github.com/Embucket/arrow-rs.git?rev=5d211125b8e8a5784f2caf606cdf88684dec30a5#5d211125b8e8a5784f2caf606cdf88684dec30a5" dependencies = [ "arrow-array", "arrow-buffer", @@ -242,7 +242,7 @@ dependencies = [ [[package]] name = "arrow-buffer" version = "59.2.0" -source = "git+https://github.com/Embucket/arrow-rs.git?rev=4e743e5dfb8b2b7aba69dade4d887418d01520b5#4e743e5dfb8b2b7aba69dade4d887418d01520b5" +source = "git+https://github.com/Embucket/arrow-rs.git?rev=5d211125b8e8a5784f2caf606cdf88684dec30a5#5d211125b8e8a5784f2caf606cdf88684dec30a5" dependencies = [ "bytes", "half", @@ -253,7 +253,7 @@ dependencies = [ [[package]] name = "arrow-cast" version = "59.2.0" -source = "git+https://github.com/Embucket/arrow-rs.git?rev=4e743e5dfb8b2b7aba69dade4d887418d01520b5#4e743e5dfb8b2b7aba69dade4d887418d01520b5" +source = "git+https://github.com/Embucket/arrow-rs.git?rev=5d211125b8e8a5784f2caf606cdf88684dec30a5#5d211125b8e8a5784f2caf606cdf88684dec30a5" dependencies = [ "arrow-array", "arrow-buffer", @@ -274,7 +274,7 @@ dependencies = [ [[package]] name = "arrow-csv" version = "59.2.0" -source = "git+https://github.com/Embucket/arrow-rs.git?rev=4e743e5dfb8b2b7aba69dade4d887418d01520b5#4e743e5dfb8b2b7aba69dade4d887418d01520b5" +source = "git+https://github.com/Embucket/arrow-rs.git?rev=5d211125b8e8a5784f2caf606cdf88684dec30a5#5d211125b8e8a5784f2caf606cdf88684dec30a5" dependencies = [ "arrow-array", "arrow-cast", @@ -288,7 +288,7 @@ dependencies = [ [[package]] name = "arrow-data" version = "59.2.0" -source = "git+https://github.com/Embucket/arrow-rs.git?rev=4e743e5dfb8b2b7aba69dade4d887418d01520b5#4e743e5dfb8b2b7aba69dade4d887418d01520b5" +source = "git+https://github.com/Embucket/arrow-rs.git?rev=5d211125b8e8a5784f2caf606cdf88684dec30a5#5d211125b8e8a5784f2caf606cdf88684dec30a5" dependencies = [ "arrow-buffer", "arrow-schema", @@ -300,7 +300,7 @@ dependencies = [ [[package]] name = "arrow-flight" version = "59.2.0" -source = "git+https://github.com/Embucket/arrow-rs.git?rev=4e743e5dfb8b2b7aba69dade4d887418d01520b5#4e743e5dfb8b2b7aba69dade4d887418d01520b5" +source = "git+https://github.com/Embucket/arrow-rs.git?rev=5d211125b8e8a5784f2caf606cdf88684dec30a5#5d211125b8e8a5784f2caf606cdf88684dec30a5" dependencies = [ "arrow-arith", "arrow-array", @@ -326,7 +326,7 @@ dependencies = [ [[package]] name = "arrow-ipc" version = "59.2.0" -source = "git+https://github.com/Embucket/arrow-rs.git?rev=4e743e5dfb8b2b7aba69dade4d887418d01520b5#4e743e5dfb8b2b7aba69dade4d887418d01520b5" +source = "git+https://github.com/Embucket/arrow-rs.git?rev=5d211125b8e8a5784f2caf606cdf88684dec30a5#5d211125b8e8a5784f2caf606cdf88684dec30a5" dependencies = [ "arrow-array", "arrow-buffer", @@ -341,7 +341,7 @@ dependencies = [ [[package]] name = "arrow-json" version = "59.2.0" -source = "git+https://github.com/Embucket/arrow-rs.git?rev=4e743e5dfb8b2b7aba69dade4d887418d01520b5#4e743e5dfb8b2b7aba69dade4d887418d01520b5" +source = "git+https://github.com/Embucket/arrow-rs.git?rev=5d211125b8e8a5784f2caf606cdf88684dec30a5#5d211125b8e8a5784f2caf606cdf88684dec30a5" dependencies = [ "arrow-array", "arrow-buffer", @@ -365,7 +365,7 @@ dependencies = [ [[package]] name = "arrow-ord" version = "59.2.0" -source = "git+https://github.com/Embucket/arrow-rs.git?rev=4e743e5dfb8b2b7aba69dade4d887418d01520b5#4e743e5dfb8b2b7aba69dade4d887418d01520b5" +source = "git+https://github.com/Embucket/arrow-rs.git?rev=5d211125b8e8a5784f2caf606cdf88684dec30a5#5d211125b8e8a5784f2caf606cdf88684dec30a5" dependencies = [ "arrow-array", "arrow-buffer", @@ -377,7 +377,7 @@ dependencies = [ [[package]] name = "arrow-row" version = "59.2.0" -source = "git+https://github.com/Embucket/arrow-rs.git?rev=4e743e5dfb8b2b7aba69dade4d887418d01520b5#4e743e5dfb8b2b7aba69dade4d887418d01520b5" +source = "git+https://github.com/Embucket/arrow-rs.git?rev=5d211125b8e8a5784f2caf606cdf88684dec30a5#5d211125b8e8a5784f2caf606cdf88684dec30a5" dependencies = [ "arrow-array", "arrow-buffer", @@ -389,7 +389,7 @@ dependencies = [ [[package]] name = "arrow-schema" version = "59.2.0" -source = "git+https://github.com/Embucket/arrow-rs.git?rev=4e743e5dfb8b2b7aba69dade4d887418d01520b5#4e743e5dfb8b2b7aba69dade4d887418d01520b5" +source = "git+https://github.com/Embucket/arrow-rs.git?rev=5d211125b8e8a5784f2caf606cdf88684dec30a5#5d211125b8e8a5784f2caf606cdf88684dec30a5" dependencies = [ "bitflags", "serde", @@ -400,7 +400,7 @@ dependencies = [ [[package]] name = "arrow-select" version = "59.2.0" -source = "git+https://github.com/Embucket/arrow-rs.git?rev=4e743e5dfb8b2b7aba69dade4d887418d01520b5#4e743e5dfb8b2b7aba69dade4d887418d01520b5" +source = "git+https://github.com/Embucket/arrow-rs.git?rev=5d211125b8e8a5784f2caf606cdf88684dec30a5#5d211125b8e8a5784f2caf606cdf88684dec30a5" dependencies = [ "ahash", "arrow-array", @@ -413,7 +413,7 @@ dependencies = [ [[package]] name = "arrow-string" version = "59.2.0" -source = "git+https://github.com/Embucket/arrow-rs.git?rev=4e743e5dfb8b2b7aba69dade4d887418d01520b5#4e743e5dfb8b2b7aba69dade4d887418d01520b5" +source = "git+https://github.com/Embucket/arrow-rs.git?rev=5d211125b8e8a5784f2caf606cdf88684dec30a5#5d211125b8e8a5784f2caf606cdf88684dec30a5" dependencies = [ "arrow-array", "arrow-buffer", @@ -4484,7 +4484,7 @@ dependencies = [ [[package]] name = "parquet" version = "59.2.0" -source = "git+https://github.com/Embucket/arrow-rs.git?rev=4e743e5dfb8b2b7aba69dade4d887418d01520b5#4e743e5dfb8b2b7aba69dade4d887418d01520b5" +source = "git+https://github.com/Embucket/arrow-rs.git?rev=5d211125b8e8a5784f2caf606cdf88684dec30a5#5d211125b8e8a5784f2caf606cdf88684dec30a5" dependencies = [ "ahash", "arrow-array", @@ -4863,7 +4863,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "03da047801ff44bb6a4d407d4860c05fd70bb81714e6b2f3812603d5b145b042" dependencies = [ "heck", - "itertools 0.14.0", + "itertools 0.13.0", "log", "multimap", "petgraph", @@ -4882,7 +4882,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b570b25f7617e43d59005d0990ccb79e950a423952cea19671b7a876da390adf" dependencies = [ "anyhow", - "itertools 0.14.0", + "itertools 0.13.0", "proc-macro2", "quote", "syn 2.0.119", diff --git a/Cargo.toml b/Cargo.toml index e53ddf895426e..6da9752f918a1 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -89,30 +89,30 @@ version = "55.1.0" # # See for more details: https://github.com/rust-lang/cargo/issues/11329 apache-avro = { version = "0.21", default-features = false } -arrow = { git = "https://github.com/Embucket/arrow-rs.git", rev = "4e743e5dfb8b2b7aba69dade4d887418d01520b5", features = [ +arrow = { git = "https://github.com/Embucket/arrow-rs.git", rev = "5d211125b8e8a5784f2caf606cdf88684dec30a5", features = [ "prettyprint", "chrono-tz", ] } -arrow-avro = { git = "https://github.com/Embucket/arrow-rs.git", rev = "4e743e5dfb8b2b7aba69dade4d887418d01520b5", default-features = false, features = [ +arrow-avro = { git = "https://github.com/Embucket/arrow-rs.git", rev = "5d211125b8e8a5784f2caf606cdf88684dec30a5", default-features = false, features = [ "deflate", "snappy", "zstd", "bzip2", "xz", ] } -arrow-buffer = { git = "https://github.com/Embucket/arrow-rs.git", rev = "4e743e5dfb8b2b7aba69dade4d887418d01520b5", default-features = false } -arrow-data = { git = "https://github.com/Embucket/arrow-rs.git", rev = "4e743e5dfb8b2b7aba69dade4d887418d01520b5", default-features = false } -arrow-flight = { git = "https://github.com/Embucket/arrow-rs.git", rev = "4e743e5dfb8b2b7aba69dade4d887418d01520b5", features = [ +arrow-buffer = { git = "https://github.com/Embucket/arrow-rs.git", rev = "5d211125b8e8a5784f2caf606cdf88684dec30a5", default-features = false } +arrow-data = { git = "https://github.com/Embucket/arrow-rs.git", rev = "5d211125b8e8a5784f2caf606cdf88684dec30a5", default-features = false } +arrow-flight = { git = "https://github.com/Embucket/arrow-rs.git", rev = "5d211125b8e8a5784f2caf606cdf88684dec30a5", features = [ "flight-sql-experimental", ] } # Both codecs are required here to make sure that code paths like # file-spilling have access to all compression codecs. -arrow-ipc = { git = "https://github.com/Embucket/arrow-rs.git", rev = "4e743e5dfb8b2b7aba69dade4d887418d01520b5", default-features = false, features = [ +arrow-ipc = { git = "https://github.com/Embucket/arrow-rs.git", rev = "5d211125b8e8a5784f2caf606cdf88684dec30a5", default-features = false, features = [ "lz4", "zstd", ] } -arrow-ord = { git = "https://github.com/Embucket/arrow-rs.git", rev = "4e743e5dfb8b2b7aba69dade4d887418d01520b5", default-features = false } -arrow-schema = { git = "https://github.com/Embucket/arrow-rs.git", rev = "4e743e5dfb8b2b7aba69dade4d887418d01520b5", default-features = false } +arrow-ord = { git = "https://github.com/Embucket/arrow-rs.git", rev = "5d211125b8e8a5784f2caf606cdf88684dec30a5", default-features = false } +arrow-schema = { git = "https://github.com/Embucket/arrow-rs.git", rev = "5d211125b8e8a5784f2caf606cdf88684dec30a5", default-features = false } async-trait = "0.1.89" bigdecimal = "0.4.8" bytes = "1.11" @@ -178,7 +178,7 @@ memchr = "2.8.1" num-traits = { version = "0.2" } object_store = { version = "0.13.2", default-features = false } parking_lot = "0.12" -parquet = { git = "https://github.com/Embucket/arrow-rs.git", rev = "4e743e5dfb8b2b7aba69dade4d887418d01520b5", default-features = false, features = [ +parquet = { git = "https://github.com/Embucket/arrow-rs.git", rev = "5d211125b8e8a5784f2caf606cdf88684dec30a5", default-features = false, features = [ "arrow", "async", "object_store", diff --git a/datafusion/datasource-csv/src/file_format.rs b/datafusion/datasource-csv/src/file_format.rs index 89e2c5ea9f9b7..4a110e6e50a6b 100644 --- a/datafusion/datasource-csv/src/file_format.rs +++ b/datafusion/datasource-csv/src/file_format.rs @@ -1535,6 +1535,9 @@ mod tests { DataType::Date32, ), ("1e2", "1\n1e2", DataType::Float64), + ("true", "1\nfalse", DataType::Boolean), + ("1", "true\n0", DataType::Utf8), + ("true", "1\n2", DataType::Utf8), ( "1234567890123456789012345678901234567", "0.01", From 937dbec094a3254579ccf4767cb583e4293387ca Mon Sep 17 00:00:00 2001 From: osipovartem Date: Thu, 8 Oct 2026 17:10:08 +0300 Subject: [PATCH 2/2] Keep unrelated prost lockfile edges unchanged --- Cargo.lock | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 74ec53f9f922f..d1214fc9dc6e4 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -4863,7 +4863,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "03da047801ff44bb6a4d407d4860c05fd70bb81714e6b2f3812603d5b145b042" dependencies = [ "heck", - "itertools 0.13.0", + "itertools 0.14.0", "log", "multimap", "petgraph", @@ -4882,7 +4882,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b570b25f7617e43d59005d0990ccb79e950a423952cea19671b7a876da390adf" dependencies = [ "anyhow", - "itertools 0.13.0", + "itertools 0.14.0", "proc-macro2", "quote", "syn 2.0.119",