diff --git a/benchmarks/Cargo.toml b/benchmarks/Cargo.toml index 33fd436ebef9..d821abc0cb00 100644 --- a/benchmarks/Cargo.toml +++ b/benchmarks/Cargo.toml @@ -33,14 +33,14 @@ simd = ["datafusion/simd"] snmalloc = ["snmalloc-rs"] [dependencies] -arrow = "29.0.0" +arrow = "30.0.1" datafusion = { path = "../datafusion/core", version = "16.0.0", features = ["scheduler"] } env_logger = "0.10" futures = "0.3" mimalloc = { version = "0.1", optional = true, default-features = false } num_cpus = "1.13.0" object_store = "0.5.0" -parquet = "29.0.0" +parquet = "30.0.1" parquet-test-utils = { path = "../parquet-test-utils/", version = "0.1.0" } rand = "0.8.4" serde = { version = "1.0.136", features = ["derive"] } diff --git a/datafusion-cli/Cargo.lock b/datafusion-cli/Cargo.lock index e4bc1b20d353..e6f0b530341e 100644 --- a/datafusion-cli/Cargo.lock +++ b/datafusion-cli/Cargo.lock @@ -68,11 +68,12 @@ checksum = "8da52d66c7071e2e3fa2a1e5c6d088fec47b593032b254f5e980de8ea54454d6" [[package]] name = "arrow" -version = "29.0.0" +version = "30.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2fe17dc0113da7e2eaeaedbd304d347aa8ea64916d225b79a5c3f3b6b5d8da4c" +checksum = "1948f504d736dc6f71ea33773c5c7475998c44925be5321e9d18087a626845f5" dependencies = [ "ahash", + "arrow-arith", "arrow-array", "arrow-buffer", "arrow-cast", @@ -81,23 +82,33 @@ dependencies = [ "arrow-ipc", "arrow-json", "arrow-ord", + "arrow-row", "arrow-schema", "arrow-select", "arrow-string", - "chrono", "comfy-table", +] + +[[package]] +name = "arrow-arith" +version = "30.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5984187a7913813ffd5bb034fdc6810bdbe0ae4cff2292f0eb92797342dc02c8" +dependencies = [ + "arrow-array", + "arrow-buffer", + "arrow-data", + "arrow-schema", + "chrono", "half", - "hashbrown 0.13.1", - "multiversion", "num", - "regex", ] [[package]] name = "arrow-array" -version = "29.0.0" +version = "30.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9452131e027aec3276e43449162af084db611c42ef875e54d231e6580bc6254" +checksum = "bf71dc342bb42343d331b58c0bcad095dc045e367493d47b7f4c4509e2adfee5" dependencies = [ "ahash", "arrow-buffer", @@ -105,15 +116,15 @@ dependencies = [ "arrow-schema", "chrono", "half", - "hashbrown 0.13.1", + "hashbrown 0.13.2", "num", ] [[package]] name = "arrow-buffer" -version = "29.0.0" +version = "30.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a301001e8ed7da638a12fa579ac5f3f154c44c0655f2ca6ed0f8586b418a779" +checksum = "a7b328d9f3e124cca761ec85a6d3fcea9bf8de1b8531c7a3b6abd367472024df" dependencies = [ "half", "num", @@ -121,9 +132,9 @@ dependencies = [ [[package]] name = "arrow-cast" -version = "29.0.0" +version = "30.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "048c91d067f2eb8cc327f086773e5b0f0d7714780807fc4db09366584e23bac8" +checksum = "03976edbf66ac00a582af10a51743f0a9611777adfd68c71799d783344c3bdd2" dependencies = [ "arrow-array", "arrow-buffer", @@ -137,9 +148,9 @@ dependencies = [ [[package]] name = "arrow-csv" -version = "29.0.0" +version = "30.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed914cd0006a3bb9cac8136b3098ac7796ad26b82362f00d4f2e7c1a54684b86" +checksum = "c1b610dc9e3b43bcebeacede47381252ea41363fbcc3c3eb641ff24fc94e567e" dependencies = [ "arrow-array", "arrow-buffer", @@ -148,6 +159,7 @@ dependencies = [ "arrow-schema", "chrono", "csv", + "csv-core", "lazy_static", "lexical-core", "regex", @@ -155,9 +167,9 @@ dependencies = [ [[package]] name = "arrow-data" -version = "29.0.0" +version = "30.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e59619d9d102e4e6b22087b2bd60c07df76fcb68683620841718f6bc8e8f02cb" +checksum = "174df8602dedcdb9149538809c11bd3c0888af30b915f763c66a3d724391c8b9" dependencies = [ "arrow-buffer", "arrow-schema", @@ -167,9 +179,9 @@ dependencies = [ [[package]] name = "arrow-ipc" -version = "29.0.0" +version = "30.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fb7ad6d2fa06a1cebdaa213c59fc953b9230e560d8374aba133b572b864ec55e" +checksum = "2a316907980e70fbf87b006c52993a22d93e4a9bca4ec2ac42cfedb2fdc204ac" dependencies = [ "arrow-array", "arrow-buffer", @@ -181,9 +193,9 @@ dependencies = [ [[package]] name = "arrow-json" -version = "29.0.0" +version = "30.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e22efab3ad70336057660c5e5f2b72e2417e3444c27cb42dc477d678ddd6979" +checksum = "2cc1a1b2e98be0d8d20f932f76a8d976b779d502c8f6b828becc835d6879e903" dependencies = [ "arrow-array", "arrow-buffer", @@ -199,9 +211,9 @@ dependencies = [ [[package]] name = "arrow-ord" -version = "29.0.0" +version = "30.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e23b623332804a65ad11e7732c351896dcb132c19f8e25d99fdb13b00aae5206" +checksum = "7db83c14ddddf81c1d10ce303670f70b7687c8f52de7425b09ae905e4357fda5" dependencies = [ "arrow-array", "arrow-buffer", @@ -211,17 +223,32 @@ dependencies = [ "num", ] +[[package]] +name = "arrow-row" +version = "30.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "db41abdf586f1dba8c2973711d5c69ffb9d63688ffa46354b8c85bf9347a921c" +dependencies = [ + "ahash", + "arrow-array", + "arrow-buffer", + "arrow-data", + "arrow-schema", + "half", + "hashbrown 0.13.2", +] + [[package]] name = "arrow-schema" -version = "29.0.0" +version = "30.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "69ef17c144f1253b9864f5a3e8f4c6f1e436bdd52394855d5942f132f776b64e" +checksum = "a99dcc494fe6224e5ece572c5935d5109120a71df06bd8e04c4e23ac14dd8fac" [[package]] name = "arrow-select" -version = "29.0.0" +version = "30.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2accaf218ff107e3df0ee8f1e09b092249a1cc741c4377858a1470fd27d7096" +checksum = "4e3a2cde3ea85b28f64704045d7d54e0fcc4b17efffced574d2dd3320218298f" dependencies = [ "arrow-array", "arrow-buffer", @@ -232,9 +259,9 @@ dependencies = [ [[package]] name = "arrow-string" -version = "29.0.0" +version = "30.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4a0954f9e1f45b04815ddacbde72899bf3c03a08fa6c0375f42178c4a01a510" +checksum = "04cf8d0003ebe0aecc716e0ac8c858c570872a7485c7c6284975f31469703a0d" dependencies = [ "arrow-array", "arrow-buffer", @@ -295,6 +322,18 @@ version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8" +[[package]] +name = "base64" +version = "0.20.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0ea22880d78093b0cbe17c89f64a7d457941e65759157ec6cb31a31d652b05e5" + +[[package]] +name = "base64" +version = "0.21.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a4a4ddaa51a5bc52a6948f74c06d20aaaddb71924eab79b8c97a8c556e942d6a" + [[package]] name = "bitflags" version = "1.3.2" @@ -474,9 +513,9 @@ dependencies = [ [[package]] name = "clipboard-win" -version = "4.4.2" +version = "4.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c4ab1b92798304eedc095b53942963240037c0516452cb11aeba709d420b2219" +checksum = "7191c27c2357d9b7ef96baac1773290d4ca63b24205b82a3fd8a0637afcf0362" dependencies = [ "error-code", "str-buf", @@ -596,9 +635,9 @@ dependencies = [ [[package]] name = "cxx" -version = "1.0.85" +version = "1.0.86" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5add3fc1717409d029b20c5b6903fc0c0b02fa6741d820054f4a2efa5e5816fd" +checksum = "51d1075c37807dcf850c379432f0df05ba52cc30f279c5cfc43cc221ce7f8579" dependencies = [ "cc", "cxxbridge-flags", @@ -608,9 +647,9 @@ dependencies = [ [[package]] name = "cxx-build" -version = "1.0.85" +version = "1.0.86" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4c87959ba14bc6fbc61df77c3fcfe180fc32b93538c4f1031dd802ccb5f2ff0" +checksum = "5044281f61b27bc598f2f6647d480aed48d2bf52d6eb0b627d84c0361b17aa70" dependencies = [ "cc", "codespan-reporting", @@ -623,15 +662,15 @@ dependencies = [ [[package]] name = "cxxbridge-flags" -version = "1.0.85" +version = "1.0.86" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "69a3e162fde4e594ed2b07d0f83c6c67b745e7f28ce58c6df5e6b6bef99dfb59" +checksum = "61b50bc93ba22c27b0d31128d2d130a0a6b3d267ae27ef7e4fae2167dfe8781c" [[package]] name = "cxxbridge-macro" -version = "1.0.85" +version = "1.0.86" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e7e2adeb6a0d4a282e581096b06e1791532b7d576dcde5ccd9382acf55db8e6" +checksum = "39e61fda7e62115119469c7b3591fd913ecca96fb766cfd3f2e2502ab7bc87a5" dependencies = [ "proc-macro2", "quote", @@ -672,7 +711,7 @@ dependencies = [ "flate2", "futures", "glob", - "hashbrown 0.13.1", + "hashbrown 0.13.2", "indexmap", "itertools", "lazy_static", @@ -747,7 +786,7 @@ dependencies = [ "datafusion-common", "datafusion-expr", "datafusion-physical-expr", - "hashbrown 0.13.1", + "hashbrown 0.13.2", "log", "regex-syntax", ] @@ -767,7 +806,7 @@ dependencies = [ "datafusion-expr", "datafusion-row", "half", - "hashbrown 0.13.1", + "hashbrown 0.13.2", "indexmap", "itertools", "lazy_static", @@ -1086,10 +1125,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c05aeb6a22b8f62540c194aac980f2115af067bfe15a0734d7277a768d396b31" dependencies = [ "cfg-if", - "js-sys", "libc", "wasi", - "wasm-bindgen", ] [[package]] @@ -1119,9 +1156,9 @@ dependencies = [ [[package]] name = "half" -version = "2.2.0" +version = "2.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c467d36af040b7b2681f5fddd27427f6da8d3d072f575a265e181d2f8e8d157" +checksum = "02b4af3693f1b705df946e9fe5631932443781d0aabb423b62fcd4d73f6d2fd0" dependencies = [ "crunchy", "num-traits", @@ -1135,9 +1172,9 @@ checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" [[package]] name = "hashbrown" -version = "0.13.1" +version = "0.13.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33ff8ae62cd3a9102e5637afc8452c55acf3844001bd5374e0b0bd7b6616c038" +checksum = "43a3c133739dddd0d2990f9a4bdf8eb4b21ef50e4851ca85ab661199821d510e" dependencies = [ "ahash", ] @@ -1314,9 +1351,9 @@ dependencies = [ [[package]] name = "ipnet" -version = "2.7.0" +version = "2.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "11b0d96e660696543b251e58030cf9787df56da39dab19ad60eae7353040917e" +checksum = "30e22bd8629359895450b59ea7a776c850561b96a3b1d31321c1949d9e6c9146" [[package]] name = "itertools" @@ -1565,26 +1602,6 @@ dependencies = [ "windows-sys", ] -[[package]] -name = "multiversion" -version = "0.6.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "025c962a3dd3cc5e0e520aa9c612201d127dcdf28616974961a649dca64f5373" -dependencies = [ - "multiversion-macros", -] - -[[package]] -name = "multiversion-macros" -version = "0.6.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8a3e2bde382ebf960c1f3e79689fa5941625fe9bf694a1cb64af3e85faff3af" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - [[package]] name = "nibble_vec" version = "0.1.0" @@ -1694,16 +1711,15 @@ dependencies = [ [[package]] name = "object_store" -version = "0.5.2" +version = "0.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0014545954c5023b5fb8260415e54467cde434db6c824c9028a4b329f1b28e48" +checksum = "b4201837dc4c27a8670f0363b1255cd3845a4f0c521211cced1ed14c1d0cc6d2" dependencies = [ "async-trait", - "base64", + "base64 0.20.0", "bytes", "chrono", "futures", - "getrandom", "itertools", "parking_lot", "percent-encoding", @@ -1754,9 +1770,9 @@ dependencies = [ [[package]] name = "parking_lot_core" -version = "0.9.5" +version = "0.9.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ff9f3fef3968a3ec5945535ed654cb38ff72d7495a25619e2247fb15a2ed9ba" +checksum = "ba1ef8814b5c993410bb3adfad7a5ed269563e4a2f90c41f5d85be7fb47133bf" dependencies = [ "cfg-if", "libc", @@ -1767,9 +1783,9 @@ dependencies = [ [[package]] name = "parquet" -version = "29.0.0" +version = "30.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d906343fd18ace6b998d5074697743e8e9358efa8c3c796a1381b98cba813338" +checksum = "4bba2a7630d2946f9e2020225062ad5619d70320e06dae6ae1074febf4c4e932" dependencies = [ "ahash", "arrow-array", @@ -1779,13 +1795,13 @@ dependencies = [ "arrow-ipc", "arrow-schema", "arrow-select", - "base64", + "base64 0.20.0", "brotli", "bytes", "chrono", "flate2", "futures", - "hashbrown 0.13.1", + "hashbrown 0.13.2", "lz4", "num", "num-bigint", @@ -1875,9 +1891,9 @@ dependencies = [ [[package]] name = "quick-xml" -version = "0.26.0" +version = "0.27.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f50b1c63b38611e7d4d7f68b82d3ad0cc71a2ad2e7f61fc10f1328d917c93cd" +checksum = "ffc053f057dd768a56f62cd7e434c42c831d296968997e9ac1f76ea7c2d14c41" dependencies = [ "memchr", "serde", @@ -1954,9 +1970,9 @@ dependencies = [ [[package]] name = "regex" -version = "1.7.0" +version = "1.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e076559ef8e241f2ae3479e36f97bd5741c0330689e217ad51ce2c76808b868a" +checksum = "48aaa5748ba571fb95cd2c85c09f629215d3a6ece942baa100950af03a34f733" dependencies = [ "aho-corasick", "memchr", @@ -1990,7 +2006,7 @@ version = "0.11.13" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "68cc60575865c7831548863cc02356512e3f1dc2f3f82cb837d7fc4cc8f3c97c" dependencies = [ - "base64", + "base64 0.13.1", "bytes", "encoding_rs", "futures-core", @@ -2067,11 +2083,11 @@ dependencies = [ [[package]] name = "rustls-pemfile" -version = "1.0.1" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0864aeff53f8c05aa08d86e5ef839d3dfcf07aeba2db32f12db0ef716e87bd55" +checksum = "d194b56d58803a43635bdc398cd17e383d6f71f9182b9a192c127ca42494a59b" dependencies = [ - "base64", + "base64 0.21.0", ] [[package]] @@ -2845,9 +2861,9 @@ dependencies = [ [[package]] name = "zstd" -version = "0.12.1+zstd.1.5.2" +version = "0.12.2+zstd.1.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c947d2adc84ff9a59f2e3c03b81aa4128acf28d6ad7d56273f7e8af14e47bea" +checksum = "e9262a83dc741c0b0ffec209881b45dbc232c21b02a2b9cb1adb93266e41303d" dependencies = [ "zstd-safe", ] @@ -2864,10 +2880,11 @@ dependencies = [ [[package]] name = "zstd-sys" -version = "2.0.4+zstd.1.5.2" +version = "2.0.5+zstd.1.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4fa202f2ef00074143e219d15b62ffc317d17cc33909feac471c044087cad7b0" +checksum = "edc50ffce891ad571e9f9afe5039c4837bede781ac4bb13052ed7ae695518596" dependencies = [ "cc", "libc", + "pkg-config", ] diff --git a/datafusion-cli/Cargo.toml b/datafusion-cli/Cargo.toml index 7ad2041e6cae..1149ef68460c 100644 --- a/datafusion-cli/Cargo.toml +++ b/datafusion-cli/Cargo.toml @@ -29,7 +29,7 @@ rust-version = "1.62" readme = "README.md" [dependencies] -arrow = "29.0.0" +arrow = "30.0.1" async-trait = "0.1.41" clap = { version = "3", features = ["derive", "cargo"] } datafusion = { path = "../datafusion/core", version = "16.0.0" } diff --git a/datafusion-examples/Cargo.toml b/datafusion-examples/Cargo.toml index 53b1826a9dcc..eab9239962aa 100644 --- a/datafusion-examples/Cargo.toml +++ b/datafusion-examples/Cargo.toml @@ -34,8 +34,8 @@ path = "examples/avro_sql.rs" required-features = ["datafusion/avro"] [dev-dependencies] -arrow = "29.0.0" -arrow-flight = "29.0.0" +arrow = "30.0.1" +arrow-flight = "30.0.1" async-trait = "0.1.41" datafusion = { path = "../datafusion/core" } datafusion-common = { path = "../datafusion/common" } diff --git a/datafusion-examples/examples/flight_client.rs b/datafusion-examples/examples/flight_client.rs index 7a43af9a45b5..fe87740d9b8f 100644 --- a/datafusion-examples/examples/flight_client.rs +++ b/datafusion-examples/examples/flight_client.rs @@ -40,7 +40,7 @@ async fn main() -> Result<(), Box> { // Call get_schema to get the schema of a Parquet file let request = tonic::Request::new(FlightDescriptor { r#type: flight_descriptor::DescriptorType::Path as i32, - cmd: vec![], + cmd: Default::default(), path: vec![format!("{testdata}/alltypes_plain.parquet")], }); diff --git a/datafusion-examples/examples/flight_server.rs b/datafusion-examples/examples/flight_server.rs index 9b6dc39e4eab..cb7b7c28d909 100644 --- a/datafusion-examples/examples/flight_server.rs +++ b/datafusion-examples/examples/flight_server.rs @@ -15,6 +15,7 @@ // specific language governing permissions and limitations // under the License. +use arrow::ipc::writer::{DictionaryTracker, IpcDataGenerator}; use std::sync::Arc; use arrow_flight::SchemaAsIpc; @@ -105,30 +106,23 @@ impl FlightService for FlightServiceImpl { // add an initial FlightData message that sends schema let options = datafusion::arrow::ipc::writer::IpcWriteOptions::default(); - let schema_flight_data = SchemaAsIpc::new(&schema, &options).into(); - - let mut flights: Vec> = - vec![Ok(schema_flight_data)]; - - let mut batches: Vec> = results - .iter() - .flat_map(|batch| { - let (flight_dictionaries, flight_batch) = - arrow_flight::utils::flight_data_from_arrow_batch( - batch, &options, - ); - flight_dictionaries - .into_iter() - .chain(std::iter::once(flight_batch)) - .map(Ok) - }) - .collect(); - - // append batch vector to schema vector, so that the first message sent is the schema - flights.append(&mut batches); - - let output = futures::stream::iter(flights); + let schema_flight_data = SchemaAsIpc::new(&schema, &options); + let mut flights = vec![FlightData::from(schema_flight_data)]; + + let encoder = IpcDataGenerator::default(); + let mut tracker = DictionaryTracker::new(false); + + for batch in &results { + let (flight_dictionaries, flight_batch) = encoder + .encoded_batch(batch, &mut tracker, &options) + .map_err(|e: ArrowError| Status::internal(e.to_string()))?; + + flights.extend(flight_dictionaries.into_iter().map(Into::into)); + flights.push(flight_batch.into()); + } + + let output = futures::stream::iter(flights.into_iter().map(Ok)); Ok(Response::new(Box::pin(output) as Self::DoGetStream)) } Err(e) => Err(Status::invalid_argument(format!("Invalid ticket: {e:?}"))), diff --git a/datafusion/common/Cargo.toml b/datafusion/common/Cargo.toml index 7445812a10b0..bb5b8899e8ea 100644 --- a/datafusion/common/Cargo.toml +++ b/datafusion/common/Cargo.toml @@ -40,11 +40,11 @@ pyarrow = ["pyo3", "arrow/pyarrow"] [dependencies] apache-avro = { version = "0.14", default-features = false, features = ["snappy"], optional = true } -arrow = { version = "29.0.0", default-features = false } +arrow = { version = "30.0.1", default-features = false } chrono = { version = "0.4", default-features = false } cranelift-module = { version = "0.89.0", optional = true } num_cpus = "1.13.0" object_store = { version = "0.5.0", default-features = false, optional = true } -parquet = { version = "29.0.0", default-features = false, optional = true } +parquet = { version = "30.0.1", default-features = false, optional = true } pyo3 = { version = "0.17.1", optional = true } sqlparser = "0.30" diff --git a/datafusion/core/Cargo.toml b/datafusion/core/Cargo.toml index a1c9c463e6b4..f7e17fd8a70c 100644 --- a/datafusion/core/Cargo.toml +++ b/datafusion/core/Cargo.toml @@ -57,7 +57,7 @@ unicode_expressions = ["datafusion-physical-expr/regex_expressions", "datafusion [dependencies] ahash = { version = "0.8", default-features = false, features = ["runtime-rng"] } apache-avro = { version = "0.14", optional = true } -arrow = { version = "29.0.0", features = ["prettyprint"] } +arrow = { version = "30.0.1", features = ["prettyprint"] } async-compression = { version = "0.3.14", features = ["bzip2", "gzip", "xz", "futures-io", "tokio"], optional = true } async-trait = "0.1.41" bytes = "1.1" @@ -83,7 +83,7 @@ num-traits = { version = "0.2", optional = true } num_cpus = "1.13.0" object_store = "0.5.0" parking_lot = "0.12" -parquet = { version = "29.0.0", features = ["arrow", "async"] } +parquet = { version = "30.0.1", features = ["arrow", "async"] } paste = "^1.0" percent-encoding = "2.2.0" pin-project-lite = "^0.2.7" @@ -102,7 +102,7 @@ xz2 = { version = "0.1", optional = true } [dev-dependencies] -arrow = { version = "29.0.0", features = ["prettyprint", "dyn_cmp_dict"] } +arrow = { version = "30.0.1", features = ["prettyprint", "dyn_cmp_dict"] } async-trait = "0.1.53" criterion = "0.4" csv = "1.1.6" diff --git a/datafusion/core/src/physical_plan/file_format/csv.rs b/datafusion/core/src/physical_plan/file_format/csv.rs index 26ac8cfcda6d..09d7bf82faeb 100644 --- a/datafusion/core/src/physical_plan/file_format/csv.rs +++ b/datafusion/core/src/physical_plan/file_format/csv.rs @@ -444,24 +444,11 @@ mod tests { assert_eq!(14, csv.schema().fields().len()); let mut it = csv.execute(0, task_ctx)?; - let batch = it.next().await.unwrap()?; - assert_eq!(14, batch.num_columns()); - assert_eq!(5, batch.num_rows()); - - let expected = vec![ - "+----+----+-----+--------+------------+----------------------+-----+-------+------------+----------------------+-------------+---------------------+--------------------------------+-------------+", - "| c1 | c2 | c3 | c4 | c5 | c6 | c7 | c8 | c9 | c10 | c11 | c12 | c13 | missing_col |", - "+----+----+-----+--------+------------+----------------------+-----+-------+------------+----------------------+-------------+---------------------+--------------------------------+-------------+", - "| c | 2 | 1 | 18109 | 2033001162 | -6513304855495910254 | 25 | 43062 | 1491205016 | 5863949479783605708 | 0.110830784 | 0.9294097332465232 | 6WfVFBVGJSQb7FhA7E0lBwdvjfZnSW | |", - "| d | 5 | -40 | 22614 | 706441268 | -7542719935673075327 | 155 | 14337 | 3373581039 | 11720144131976083864 | 0.69632107 | 0.3114712539863804 | C2GT5KVyOPZpgKVl110TyZO0NcJ434 | |", - "| b | 1 | 29 | -18218 | 994303988 | 5983957848665088916 | 204 | 9489 | 3275293996 | 14857091259186476033 | 0.53840446 | 0.17909035118828576 | AyYVExXK6AR2qUTxNZ7qRHQOVGMLcz | |", - "| a | 1 | -85 | -15154 | 1171968280 | 1919439543497968449 | 77 | 52286 | 774637006 | 12101411955859039553 | 0.12285209 | 0.6864391962767343 | 0keZ5G8BffGwgF2RwQD59TFzMStxCB | |", - "| b | 5 | -82 | 22080 | 1824882165 | 7373730676428214987 | 208 | 34331 | 3342719438 | 3330177516592499461 | 0.82634634 | 0.40975383525297016 | Ig1QcuKsjHXkproePdERo2w0mYzIqd | |", - "+----+----+-----+--------+------------+----------------------+-----+-------+------------+----------------------+-------------+---------------------+--------------------------------+-------------+", - ]; - - crate::assert_batches_eq!(expected, &[batch]); - + let err = it.next().await.unwrap().unwrap_err().to_string(); + assert_eq!( + err, + "Csv error: incorrect number of fields, expected 14 got 13" + ); Ok(()) } diff --git a/datafusion/expr/Cargo.toml b/datafusion/expr/Cargo.toml index 34adfda49a55..5065856d5ee1 100644 --- a/datafusion/expr/Cargo.toml +++ b/datafusion/expr/Cargo.toml @@ -36,7 +36,7 @@ path = "src/lib.rs" [dependencies] ahash = { version = "0.8", default-features = false, features = ["runtime-rng"] } -arrow = { version = "29.0.0", default-features = false } +arrow = { version = "30.0.1", default-features = false } datafusion-common = { path = "../common", version = "16.0.0" } log = "^0.4" sqlparser = "0.30" diff --git a/datafusion/jit/Cargo.toml b/datafusion/jit/Cargo.toml index 816cbf8f147c..1d071159a583 100644 --- a/datafusion/jit/Cargo.toml +++ b/datafusion/jit/Cargo.toml @@ -36,7 +36,7 @@ path = "src/lib.rs" jit = [] [dependencies] -arrow = { version = "29.0.0", default-features = false } +arrow = { version = "30.0.1", default-features = false } cranelift = "0.89.0" cranelift-jit = "0.89.0" cranelift-module = "0.89.0" diff --git a/datafusion/optimizer/Cargo.toml b/datafusion/optimizer/Cargo.toml index ee8f3a5f2e70..984cd10c5794 100644 --- a/datafusion/optimizer/Cargo.toml +++ b/datafusion/optimizer/Cargo.toml @@ -37,7 +37,7 @@ default = ["unicode_expressions"] unicode_expressions = [] [dependencies] -arrow = { version = "29.0.0", features = ["prettyprint"] } +arrow = { version = "30.0.1", features = ["prettyprint"] } async-trait = "0.1.41" chrono = { version = "0.4.23", default-features = false } datafusion-common = { path = "../common", version = "16.0.0" } diff --git a/datafusion/physical-expr/Cargo.toml b/datafusion/physical-expr/Cargo.toml index 3fb632ebd034..4819fd630055 100644 --- a/datafusion/physical-expr/Cargo.toml +++ b/datafusion/physical-expr/Cargo.toml @@ -40,9 +40,9 @@ unicode_expressions = ["unicode-segmentation"] [dependencies] ahash = { version = "0.8", default-features = false, features = ["runtime-rng"] } -arrow = { version = "29.0.0", features = ["prettyprint", "dyn_cmp_dict"] } -arrow-buffer = "29.0.0" -arrow-schema = "29.0.0" +arrow = { version = "30.0.1", features = ["prettyprint", "dyn_cmp_dict"] } +arrow-buffer = "30.0.1" +arrow-schema = "30.0.1" blake2 = { version = "^0.10.2", optional = true } blake3 = { version = "1.0", optional = true } chrono = { version = "0.4.23", default-features = false } diff --git a/datafusion/physical-expr/src/expressions/nullif.rs b/datafusion/physical-expr/src/expressions/nullif.rs index 73b5a80b62f4..a2a61d16af41 100644 --- a/datafusion/physical-expr/src/expressions/nullif.rs +++ b/datafusion/physical-expr/src/expressions/nullif.rs @@ -17,7 +17,7 @@ use arrow::array::Array; use arrow::compute::eq_dyn; -use arrow::compute::nullif::nullif; +use arrow::compute::kernels::nullif::nullif; use datafusion_common::{cast::as_boolean_array, DataFusionError, Result, ScalarValue}; use datafusion_expr::ColumnarValue; diff --git a/datafusion/proto/Cargo.toml b/datafusion/proto/Cargo.toml index 245aa9e7794f..9548f17eb002 100644 --- a/datafusion/proto/Cargo.toml +++ b/datafusion/proto/Cargo.toml @@ -40,7 +40,7 @@ default = [] json = ["pbjson", "serde", "serde_json"] [dependencies] -arrow = "29.0.0" +arrow = "30.0.1" chrono = { version = "0.4", default-features = false } datafusion = { path = "../core", version = "16.0.0" } datafusion-common = { path = "../common", version = "16.0.0" } @@ -60,4 +60,4 @@ tokio = "1.18" [build-dependencies] # Pin these dependencies so that the generated output is deterministic pbjson-build = { version = "=0.5.1" } -prost-build = { version = "=0.11.3" } +prost-build = { version = "=0.11.5" } diff --git a/datafusion/proto/src/generated/prost.rs b/datafusion/proto/src/generated/prost.rs index a20b15fcc198..21816f5a9022 100644 --- a/datafusion/proto/src/generated/prost.rs +++ b/datafusion/proto/src/generated/prost.rs @@ -1,8 +1,10 @@ +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct ColumnRelation { #[prost(string, tag = "1")] pub relation: ::prost::alloc::string::String, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct Column { #[prost(string, tag = "1")] @@ -10,6 +12,7 @@ pub struct Column { #[prost(message, optional, tag = "2")] pub relation: ::core::option::Option, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct DfField { #[prost(message, optional, tag = "1")] @@ -17,6 +20,7 @@ pub struct DfField { #[prost(message, optional, tag = "2")] pub qualifier: ::core::option::Option, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct DfSchema { #[prost(message, repeated, tag = "1")] @@ -29,6 +33,7 @@ pub struct DfSchema { } /// logical plan /// LogicalPlan is a nested type +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct LogicalPlanNode { #[prost( @@ -39,6 +44,7 @@ pub struct LogicalPlanNode { } /// Nested message and enum types in `LogicalPlanNode`. pub mod logical_plan_node { + #[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Oneof)] pub enum LogicalPlanType { #[prost(message, tag = "1")] @@ -93,6 +99,7 @@ pub mod logical_plan_node { Prepare(::prost::alloc::boxed::Box), } } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct LogicalExtensionNode { #[prost(bytes = "vec", tag = "1")] @@ -100,11 +107,13 @@ pub struct LogicalExtensionNode { #[prost(message, repeated, tag = "2")] pub inputs: ::prost::alloc::vec::Vec, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct ProjectionColumns { #[prost(string, repeated, tag = "1")] pub columns: ::prost::alloc::vec::Vec<::prost::alloc::string::String>, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct CsvFormat { #[prost(bool, tag = "1")] @@ -112,10 +121,13 @@ pub struct CsvFormat { #[prost(string, tag = "2")] pub delimiter: ::prost::alloc::string::String, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct ParquetFormat {} +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct AvroFormat {} +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct ListingTableScanNode { #[prost(string, tag = "1")] @@ -145,6 +157,7 @@ pub struct ListingTableScanNode { } /// Nested message and enum types in `ListingTableScanNode`. pub mod listing_table_scan_node { + #[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Oneof)] pub enum FileFormatType { #[prost(message, tag = "10")] @@ -155,6 +168,7 @@ pub mod listing_table_scan_node { Avro(super::AvroFormat), } } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct ViewTableScanNode { #[prost(string, tag = "1")] @@ -169,6 +183,7 @@ pub struct ViewTableScanNode { pub definition: ::prost::alloc::string::String, } /// Logical Plan to Scan a CustomTableProvider registered at runtime +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct CustomTableScanNode { #[prost(string, tag = "1")] @@ -182,6 +197,7 @@ pub struct CustomTableScanNode { #[prost(bytes = "vec", tag = "5")] pub custom_table_data: ::prost::alloc::vec::Vec, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct ProjectionNode { #[prost(message, optional, boxed, tag = "1")] @@ -193,12 +209,14 @@ pub struct ProjectionNode { } /// Nested message and enum types in `ProjectionNode`. pub mod projection_node { + #[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Oneof)] pub enum OptionalAlias { #[prost(string, tag = "3")] Alias(::prost::alloc::string::String), } } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct SelectionNode { #[prost(message, optional, boxed, tag = "1")] @@ -206,6 +224,7 @@ pub struct SelectionNode { #[prost(message, optional, tag = "2")] pub expr: ::core::option::Option, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct SortNode { #[prost(message, optional, boxed, tag = "1")] @@ -216,6 +235,7 @@ pub struct SortNode { #[prost(int64, tag = "3")] pub fetch: i64, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct RepartitionNode { #[prost(message, optional, boxed, tag = "1")] @@ -225,6 +245,7 @@ pub struct RepartitionNode { } /// Nested message and enum types in `RepartitionNode`. pub mod repartition_node { + #[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Oneof)] pub enum PartitionMethod { #[prost(uint64, tag = "2")] @@ -233,6 +254,7 @@ pub mod repartition_node { Hash(super::HashRepartition), } } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct HashRepartition { #[prost(message, repeated, tag = "1")] @@ -240,11 +262,13 @@ pub struct HashRepartition { #[prost(uint64, tag = "2")] pub partition_count: u64, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct EmptyRelationNode { #[prost(bool, tag = "1")] pub produce_one_row: bool, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct CreateExternalTableNode { #[prost(message, optional, tag = "12")] @@ -273,6 +297,7 @@ pub struct CreateExternalTableNode { ::prost::alloc::string::String, >, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct PrepareNode { #[prost(string, tag = "1")] @@ -282,6 +307,7 @@ pub struct PrepareNode { #[prost(message, optional, boxed, tag = "3")] pub input: ::core::option::Option<::prost::alloc::boxed::Box>, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct CreateCatalogSchemaNode { #[prost(string, tag = "1")] @@ -291,6 +317,7 @@ pub struct CreateCatalogSchemaNode { #[prost(message, optional, tag = "3")] pub schema: ::core::option::Option, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct CreateCatalogNode { #[prost(string, tag = "1")] @@ -300,6 +327,7 @@ pub struct CreateCatalogNode { #[prost(message, optional, tag = "3")] pub schema: ::core::option::Option, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct CreateViewNode { #[prost(message, optional, tag = "5")] @@ -313,6 +341,7 @@ pub struct CreateViewNode { } /// a node containing data for defining values list. unlike in SQL where it's two dimensional, here /// the list is flattened, and with the field n_cols it can be parsed and partitioned into rows +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct ValuesNode { #[prost(uint64, tag = "1")] @@ -320,6 +349,7 @@ pub struct ValuesNode { #[prost(message, repeated, tag = "2")] pub values_list: ::prost::alloc::vec::Vec, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct AnalyzeNode { #[prost(message, optional, boxed, tag = "1")] @@ -327,6 +357,7 @@ pub struct AnalyzeNode { #[prost(bool, tag = "2")] pub verbose: bool, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct ExplainNode { #[prost(message, optional, boxed, tag = "1")] @@ -334,6 +365,7 @@ pub struct ExplainNode { #[prost(bool, tag = "2")] pub verbose: bool, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct AggregateNode { #[prost(message, optional, boxed, tag = "1")] @@ -343,6 +375,7 @@ pub struct AggregateNode { #[prost(message, repeated, tag = "3")] pub aggr_expr: ::prost::alloc::vec::Vec, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct WindowNode { #[prost(message, optional, boxed, tag = "1")] @@ -350,6 +383,7 @@ pub struct WindowNode { #[prost(message, repeated, tag = "2")] pub window_expr: ::prost::alloc::vec::Vec, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct JoinNode { #[prost(message, optional, boxed, tag = "1")] @@ -369,16 +403,19 @@ pub struct JoinNode { #[prost(message, optional, tag = "8")] pub filter: ::core::option::Option, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct DistinctNode { #[prost(message, optional, boxed, tag = "1")] pub input: ::core::option::Option<::prost::alloc::boxed::Box>, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct UnionNode { #[prost(message, repeated, tag = "1")] pub inputs: ::prost::alloc::vec::Vec, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct CrossJoinNode { #[prost(message, optional, boxed, tag = "1")] @@ -386,6 +423,7 @@ pub struct CrossJoinNode { #[prost(message, optional, boxed, tag = "2")] pub right: ::core::option::Option<::prost::alloc::boxed::Box>, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct LimitNode { #[prost(message, optional, boxed, tag = "1")] @@ -397,11 +435,13 @@ pub struct LimitNode { #[prost(int64, tag = "3")] pub fetch: i64, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct SelectionExecNode { #[prost(message, optional, tag = "1")] pub expr: ::core::option::Option, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct SubqueryAliasNode { #[prost(message, optional, boxed, tag = "1")] @@ -410,6 +450,7 @@ pub struct SubqueryAliasNode { pub alias: ::prost::alloc::string::String, } /// logical expressions +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct LogicalExprNode { #[prost( @@ -420,6 +461,7 @@ pub struct LogicalExprNode { } /// Nested message and enum types in `LogicalExprNode`. pub mod logical_expr_node { + #[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Oneof)] pub enum ExprType { /// column references @@ -500,6 +542,7 @@ pub mod logical_expr_node { Placeholder(super::PlaceholderNode), } } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct PlaceholderNode { #[prost(string, tag = "1")] @@ -507,26 +550,31 @@ pub struct PlaceholderNode { #[prost(message, optional, tag = "2")] pub data_type: ::core::option::Option, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct LogicalExprList { #[prost(message, repeated, tag = "1")] pub expr: ::prost::alloc::vec::Vec, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct GroupingSetNode { #[prost(message, repeated, tag = "1")] pub expr: ::prost::alloc::vec::Vec, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct CubeNode { #[prost(message, repeated, tag = "1")] pub expr: ::prost::alloc::vec::Vec, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct RollupNode { #[prost(message, repeated, tag = "1")] pub expr: ::prost::alloc::vec::Vec, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct GetIndexedField { #[prost(message, optional, boxed, tag = "1")] @@ -534,51 +582,61 @@ pub struct GetIndexedField { #[prost(message, optional, tag = "2")] pub key: ::core::option::Option, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct IsNull { #[prost(message, optional, boxed, tag = "1")] pub expr: ::core::option::Option<::prost::alloc::boxed::Box>, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct IsNotNull { #[prost(message, optional, boxed, tag = "1")] pub expr: ::core::option::Option<::prost::alloc::boxed::Box>, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct IsTrue { #[prost(message, optional, boxed, tag = "1")] pub expr: ::core::option::Option<::prost::alloc::boxed::Box>, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct IsFalse { #[prost(message, optional, boxed, tag = "1")] pub expr: ::core::option::Option<::prost::alloc::boxed::Box>, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct IsUnknown { #[prost(message, optional, boxed, tag = "1")] pub expr: ::core::option::Option<::prost::alloc::boxed::Box>, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct IsNotTrue { #[prost(message, optional, boxed, tag = "1")] pub expr: ::core::option::Option<::prost::alloc::boxed::Box>, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct IsNotFalse { #[prost(message, optional, boxed, tag = "1")] pub expr: ::core::option::Option<::prost::alloc::boxed::Box>, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct IsNotUnknown { #[prost(message, optional, boxed, tag = "1")] pub expr: ::core::option::Option<::prost::alloc::boxed::Box>, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct Not { #[prost(message, optional, boxed, tag = "1")] pub expr: ::core::option::Option<::prost::alloc::boxed::Box>, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct AliasNode { #[prost(message, optional, boxed, tag = "1")] @@ -586,6 +644,7 @@ pub struct AliasNode { #[prost(string, tag = "2")] pub alias: ::prost::alloc::string::String, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct BinaryExprNode { /// Represents the operands from the left inner most expression @@ -596,11 +655,13 @@ pub struct BinaryExprNode { #[prost(string, tag = "3")] pub op: ::prost::alloc::string::String, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct NegativeNode { #[prost(message, optional, boxed, tag = "1")] pub expr: ::core::option::Option<::prost::alloc::boxed::Box>, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct InListNode { #[prost(message, optional, boxed, tag = "1")] @@ -610,6 +671,7 @@ pub struct InListNode { #[prost(bool, tag = "3")] pub negated: bool, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct ScalarFunctionNode { #[prost(enumeration = "ScalarFunction", tag = "1")] @@ -617,6 +679,7 @@ pub struct ScalarFunctionNode { #[prost(message, repeated, tag = "2")] pub args: ::prost::alloc::vec::Vec, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct AggregateExprNode { #[prost(enumeration = "AggregateFunction", tag = "1")] @@ -628,6 +691,7 @@ pub struct AggregateExprNode { #[prost(message, optional, boxed, tag = "4")] pub filter: ::core::option::Option<::prost::alloc::boxed::Box>, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct AggregateUdfExprNode { #[prost(string, tag = "1")] @@ -637,6 +701,7 @@ pub struct AggregateUdfExprNode { #[prost(message, optional, boxed, tag = "3")] pub filter: ::core::option::Option<::prost::alloc::boxed::Box>, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct ScalarUdfExprNode { #[prost(string, tag = "1")] @@ -644,6 +709,7 @@ pub struct ScalarUdfExprNode { #[prost(message, repeated, tag = "2")] pub args: ::prost::alloc::vec::Vec, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct WindowExprNode { #[prost(message, optional, boxed, tag = "4")] @@ -660,6 +726,7 @@ pub struct WindowExprNode { } /// Nested message and enum types in `WindowExprNode`. pub mod window_expr_node { + #[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Oneof)] pub enum WindowFunction { #[prost(enumeration = "super::AggregateFunction", tag = "1")] @@ -669,6 +736,7 @@ pub mod window_expr_node { BuiltInFunction(i32), } } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct BetweenNode { #[prost(message, optional, boxed, tag = "1")] @@ -680,6 +748,7 @@ pub struct BetweenNode { #[prost(message, optional, boxed, tag = "4")] pub high: ::core::option::Option<::prost::alloc::boxed::Box>, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct LikeNode { #[prost(bool, tag = "1")] @@ -691,6 +760,7 @@ pub struct LikeNode { #[prost(string, tag = "4")] pub escape_char: ::prost::alloc::string::String, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct ILikeNode { #[prost(bool, tag = "1")] @@ -702,6 +772,7 @@ pub struct ILikeNode { #[prost(string, tag = "4")] pub escape_char: ::prost::alloc::string::String, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct SimilarToNode { #[prost(bool, tag = "1")] @@ -713,6 +784,7 @@ pub struct SimilarToNode { #[prost(string, tag = "4")] pub escape_char: ::prost::alloc::string::String, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct CaseNode { #[prost(message, optional, boxed, tag = "1")] @@ -722,6 +794,7 @@ pub struct CaseNode { #[prost(message, optional, boxed, tag = "3")] pub else_expr: ::core::option::Option<::prost::alloc::boxed::Box>, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct WhenThen { #[prost(message, optional, tag = "1")] @@ -729,6 +802,7 @@ pub struct WhenThen { #[prost(message, optional, tag = "2")] pub then_expr: ::core::option::Option, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct CastNode { #[prost(message, optional, boxed, tag = "1")] @@ -736,6 +810,7 @@ pub struct CastNode { #[prost(message, optional, tag = "2")] pub arrow_type: ::core::option::Option, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct TryCastNode { #[prost(message, optional, boxed, tag = "1")] @@ -743,6 +818,7 @@ pub struct TryCastNode { #[prost(message, optional, tag = "2")] pub arrow_type: ::core::option::Option, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct SortExprNode { #[prost(message, optional, boxed, tag = "1")] @@ -752,6 +828,7 @@ pub struct SortExprNode { #[prost(bool, tag = "3")] pub nulls_first: bool, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct WindowFrame { #[prost(enumeration = "WindowFrameUnits", tag = "1")] @@ -767,12 +844,14 @@ pub struct WindowFrame { pub mod window_frame { /// "optional" keyword is stable in protoc 3.15 but prost is still on 3.14 (see and ) /// this syntax is ugly but is binary compatible with the "optional" keyword (see ) + #[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Oneof)] pub enum EndBound { #[prost(message, tag = "3")] Bound(super::WindowFrameBound), } } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct WindowFrameBound { #[prost(enumeration = "WindowFrameBoundType", tag = "1")] @@ -780,11 +859,13 @@ pub struct WindowFrameBound { #[prost(message, optional, tag = "2")] pub bound_value: ::core::option::Option, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct Schema { #[prost(message, repeated, tag = "1")] pub columns: ::prost::alloc::vec::Vec, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct Field { /// name of the field @@ -798,11 +879,13 @@ pub struct Field { #[prost(message, repeated, tag = "4")] pub children: ::prost::alloc::vec::Vec, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct FixedSizeBinary { #[prost(int32, tag = "1")] pub length: i32, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct Timestamp { #[prost(enumeration = "TimeUnit", tag = "1")] @@ -810,6 +893,7 @@ pub struct Timestamp { #[prost(string, tag = "2")] pub timezone: ::prost::alloc::string::String, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct Decimal { #[prost(uint32, tag = "3")] @@ -817,11 +901,13 @@ pub struct Decimal { #[prost(int32, tag = "4")] pub scale: i32, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct List { #[prost(message, optional, boxed, tag = "1")] pub field_type: ::core::option::Option<::prost::alloc::boxed::Box>, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct FixedSizeList { #[prost(message, optional, boxed, tag = "1")] @@ -829,6 +915,7 @@ pub struct FixedSizeList { #[prost(int32, tag = "2")] pub list_size: i32, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct Dictionary { #[prost(message, optional, boxed, tag = "1")] @@ -836,11 +923,13 @@ pub struct Dictionary { #[prost(message, optional, boxed, tag = "2")] pub value: ::core::option::Option<::prost::alloc::boxed::Box>, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct Struct { #[prost(message, repeated, tag = "1")] pub sub_field_types: ::prost::alloc::vec::Vec, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct Union { #[prost(message, repeated, tag = "1")] @@ -850,6 +939,7 @@ pub struct Union { #[prost(int32, repeated, tag = "3")] pub type_ids: ::prost::alloc::vec::Vec, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct ScalarListValue { /// encode null explicitly to distinguish a list with a null value @@ -861,6 +951,7 @@ pub struct ScalarListValue { #[prost(message, repeated, tag = "2")] pub values: ::prost::alloc::vec::Vec, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct ScalarTime32Value { #[prost(oneof = "scalar_time32_value::Value", tags = "1, 2")] @@ -868,6 +959,7 @@ pub struct ScalarTime32Value { } /// Nested message and enum types in `ScalarTime32Value`. pub mod scalar_time32_value { + #[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Oneof)] pub enum Value { #[prost(int32, tag = "1")] @@ -876,6 +968,7 @@ pub mod scalar_time32_value { Time32MillisecondValue(i32), } } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct ScalarTime64Value { #[prost(oneof = "scalar_time64_value::Value", tags = "1, 2")] @@ -883,6 +976,7 @@ pub struct ScalarTime64Value { } /// Nested message and enum types in `ScalarTime64Value`. pub mod scalar_time64_value { + #[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Oneof)] pub enum Value { #[prost(int64, tag = "1")] @@ -891,6 +985,7 @@ pub mod scalar_time64_value { Time64NanosecondValue(i64), } } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct ScalarTimestampValue { #[prost(string, tag = "5")] @@ -900,6 +995,7 @@ pub struct ScalarTimestampValue { } /// Nested message and enum types in `ScalarTimestampValue`. pub mod scalar_timestamp_value { + #[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Oneof)] pub enum Value { #[prost(int64, tag = "1")] @@ -912,6 +1008,7 @@ pub mod scalar_timestamp_value { TimeMillisecondValue(i64), } } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct ScalarDictionaryValue { #[prost(message, optional, tag = "1")] @@ -919,6 +1016,7 @@ pub struct ScalarDictionaryValue { #[prost(message, optional, boxed, tag = "2")] pub value: ::core::option::Option<::prost::alloc::boxed::Box>, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct IntervalMonthDayNanoValue { #[prost(int32, tag = "1")] @@ -928,6 +1026,7 @@ pub struct IntervalMonthDayNanoValue { #[prost(int64, tag = "3")] pub nanos: i64, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct StructValue { /// Note that a null struct value must have one or more fields, so we @@ -938,6 +1037,7 @@ pub struct StructValue { #[prost(message, repeated, tag = "3")] pub fields: ::prost::alloc::vec::Vec, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct ScalarFixedSizeBinary { #[prost(bytes = "vec", tag = "1")] @@ -945,6 +1045,7 @@ pub struct ScalarFixedSizeBinary { #[prost(int32, tag = "2")] pub length: i32, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct ScalarValue { #[prost( @@ -955,6 +1056,7 @@ pub struct ScalarValue { } /// Nested message and enum types in `ScalarValue`. pub mod scalar_value { + #[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Oneof)] pub enum Value { /// was PrimitiveScalarType null_value = 19; @@ -1021,6 +1123,7 @@ pub mod scalar_value { FixedSizeBinaryValue(super::ScalarFixedSizeBinary), } } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct Decimal128 { #[prost(bytes = "vec", tag = "1")] @@ -1031,6 +1134,7 @@ pub struct Decimal128 { pub s: i64, } /// Serialized data type +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct ArrowType { #[prost( @@ -1041,6 +1145,7 @@ pub struct ArrowType { } /// Nested message and enum types in `ArrowType`. pub mod arrow_type { + #[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Oneof)] pub enum ArrowTypeEnum { /// arrow::Type::NA @@ -1123,18 +1228,22 @@ pub mod arrow_type { /// i32 Two = 2; /// } /// } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct EmptyMessage {} +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct OptimizedLogicalPlanType { #[prost(string, tag = "1")] pub optimizer_name: ::prost::alloc::string::String, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct OptimizedPhysicalPlanType { #[prost(string, tag = "1")] pub optimizer_name: ::prost::alloc::string::String, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct PlanType { #[prost(oneof = "plan_type::PlanTypeEnum", tags = "1, 2, 3, 4, 5, 6")] @@ -1142,6 +1251,7 @@ pub struct PlanType { } /// Nested message and enum types in `PlanType`. pub mod plan_type { + #[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Oneof)] pub enum PlanTypeEnum { #[prost(message, tag = "1")] @@ -1158,6 +1268,7 @@ pub mod plan_type { FinalPhysicalPlan(super::EmptyMessage), } } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct StringifiedPlan { #[prost(message, optional, tag = "1")] @@ -1165,11 +1276,13 @@ pub struct StringifiedPlan { #[prost(string, tag = "2")] pub plan: ::prost::alloc::string::String, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct BareTableReference { #[prost(string, tag = "1")] pub table: ::prost::alloc::string::String, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct PartialTableReference { #[prost(string, tag = "1")] @@ -1177,6 +1290,7 @@ pub struct PartialTableReference { #[prost(string, tag = "2")] pub table: ::prost::alloc::string::String, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct FullTableReference { #[prost(string, tag = "1")] @@ -1186,6 +1300,7 @@ pub struct FullTableReference { #[prost(string, tag = "3")] pub table: ::prost::alloc::string::String, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct OwnedTableReference { #[prost(oneof = "owned_table_reference::TableReferenceEnum", tags = "1, 2, 3")] @@ -1195,6 +1310,7 @@ pub struct OwnedTableReference { } /// Nested message and enum types in `OwnedTableReference`. pub mod owned_table_reference { + #[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Oneof)] pub enum TableReferenceEnum { #[prost(message, tag = "1")] @@ -1206,6 +1322,7 @@ pub mod owned_table_reference { } } /// PhysicalPlanNode is a nested type +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct PhysicalPlanNode { #[prost( @@ -1216,6 +1333,7 @@ pub struct PhysicalPlanNode { } /// Nested message and enum types in `PhysicalPlanNode`. pub mod physical_plan_node { + #[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Oneof)] pub enum PhysicalPlanType { #[prost(message, tag = "1")] @@ -1262,6 +1380,7 @@ pub mod physical_plan_node { ), } } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct PhysicalExtensionNode { #[prost(bytes = "vec", tag = "1")] @@ -1270,6 +1389,7 @@ pub struct PhysicalExtensionNode { pub inputs: ::prost::alloc::vec::Vec, } /// physical expressions +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct PhysicalExprNode { #[prost( @@ -1280,6 +1400,7 @@ pub struct PhysicalExprNode { } /// Nested message and enum types in `PhysicalExprNode`. pub mod physical_expr_node { + #[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Oneof)] pub enum ExprType { /// column references @@ -1327,6 +1448,7 @@ pub mod physical_expr_node { LikeExpr(::prost::alloc::boxed::Box), } } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct PhysicalScalarUdfNode { #[prost(string, tag = "1")] @@ -1336,6 +1458,7 @@ pub struct PhysicalScalarUdfNode { #[prost(message, optional, tag = "4")] pub return_type: ::core::option::Option, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct PhysicalAggregateExprNode { #[prost(enumeration = "AggregateFunction", tag = "1")] @@ -1345,6 +1468,7 @@ pub struct PhysicalAggregateExprNode { #[prost(bool, tag = "3")] pub distinct: bool, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct PhysicalWindowExprNode { #[prost(message, optional, boxed, tag = "4")] @@ -1356,6 +1480,7 @@ pub struct PhysicalWindowExprNode { } /// Nested message and enum types in `PhysicalWindowExprNode`. pub mod physical_window_expr_node { + #[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Oneof)] pub enum WindowFunction { #[prost(enumeration = "super::AggregateFunction", tag = "1")] @@ -1365,21 +1490,25 @@ pub mod physical_window_expr_node { BuiltInFunction(i32), } } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct PhysicalIsNull { #[prost(message, optional, boxed, tag = "1")] pub expr: ::core::option::Option<::prost::alloc::boxed::Box>, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct PhysicalIsNotNull { #[prost(message, optional, boxed, tag = "1")] pub expr: ::core::option::Option<::prost::alloc::boxed::Box>, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct PhysicalNot { #[prost(message, optional, boxed, tag = "1")] pub expr: ::core::option::Option<::prost::alloc::boxed::Box>, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct PhysicalAliasNode { #[prost(message, optional, tag = "1")] @@ -1387,6 +1516,7 @@ pub struct PhysicalAliasNode { #[prost(string, tag = "2")] pub alias: ::prost::alloc::string::String, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct PhysicalBinaryExprNode { #[prost(message, optional, boxed, tag = "1")] @@ -1396,6 +1526,7 @@ pub struct PhysicalBinaryExprNode { #[prost(string, tag = "3")] pub op: ::prost::alloc::string::String, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct PhysicalDateTimeIntervalExprNode { #[prost(message, optional, boxed, tag = "1")] @@ -1405,6 +1536,7 @@ pub struct PhysicalDateTimeIntervalExprNode { #[prost(string, tag = "3")] pub op: ::prost::alloc::string::String, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct PhysicalLikeExprNode { #[prost(bool, tag = "1")] @@ -1416,6 +1548,7 @@ pub struct PhysicalLikeExprNode { #[prost(message, optional, boxed, tag = "4")] pub pattern: ::core::option::Option<::prost::alloc::boxed::Box>, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct PhysicalSortExprNode { #[prost(message, optional, boxed, tag = "1")] @@ -1425,6 +1558,7 @@ pub struct PhysicalSortExprNode { #[prost(bool, tag = "3")] pub nulls_first: bool, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct PhysicalWhenThen { #[prost(message, optional, tag = "1")] @@ -1432,6 +1566,7 @@ pub struct PhysicalWhenThen { #[prost(message, optional, tag = "2")] pub then_expr: ::core::option::Option, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct PhysicalInListNode { #[prost(message, optional, boxed, tag = "1")] @@ -1441,6 +1576,7 @@ pub struct PhysicalInListNode { #[prost(bool, tag = "3")] pub negated: bool, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct PhysicalCaseNode { #[prost(message, optional, boxed, tag = "1")] @@ -1450,6 +1586,7 @@ pub struct PhysicalCaseNode { #[prost(message, optional, boxed, tag = "3")] pub else_expr: ::core::option::Option<::prost::alloc::boxed::Box>, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct PhysicalScalarFunctionNode { #[prost(string, tag = "1")] @@ -1461,6 +1598,7 @@ pub struct PhysicalScalarFunctionNode { #[prost(message, optional, tag = "4")] pub return_type: ::core::option::Option, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct PhysicalTryCastNode { #[prost(message, optional, boxed, tag = "1")] @@ -1468,6 +1606,7 @@ pub struct PhysicalTryCastNode { #[prost(message, optional, tag = "2")] pub arrow_type: ::core::option::Option, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct PhysicalCastNode { #[prost(message, optional, boxed, tag = "1")] @@ -1475,11 +1614,13 @@ pub struct PhysicalCastNode { #[prost(message, optional, tag = "2")] pub arrow_type: ::core::option::Option, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct PhysicalNegativeNode { #[prost(message, optional, boxed, tag = "1")] pub expr: ::core::option::Option<::prost::alloc::boxed::Box>, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct FilterExecNode { #[prost(message, optional, boxed, tag = "1")] @@ -1487,17 +1628,20 @@ pub struct FilterExecNode { #[prost(message, optional, tag = "2")] pub expr: ::core::option::Option, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct FileGroup { #[prost(message, repeated, tag = "1")] pub files: ::prost::alloc::vec::Vec, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct ScanLimit { /// wrap into a message to make it optional #[prost(uint32, tag = "1")] pub limit: u32, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct FileScanExecConf { #[prost(message, repeated, tag = "1")] @@ -1517,6 +1661,7 @@ pub struct FileScanExecConf { #[prost(message, repeated, tag = "9")] pub output_ordering: ::prost::alloc::vec::Vec, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct ParquetScanExecNode { #[prost(message, optional, tag = "1")] @@ -1524,6 +1669,7 @@ pub struct ParquetScanExecNode { #[prost(message, optional, tag = "2")] pub pruning_predicate: ::core::option::Option, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct CsvScanExecNode { #[prost(message, optional, tag = "1")] @@ -1533,11 +1679,13 @@ pub struct CsvScanExecNode { #[prost(string, tag = "3")] pub delimiter: ::prost::alloc::string::String, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct AvroScanExecNode { #[prost(message, optional, tag = "1")] pub base_conf: ::core::option::Option, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct HashJoinExecNode { #[prost(message, optional, boxed, tag = "1")] @@ -1555,11 +1703,13 @@ pub struct HashJoinExecNode { #[prost(message, optional, tag = "8")] pub filter: ::core::option::Option, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct UnionExecNode { #[prost(message, repeated, tag = "1")] pub inputs: ::prost::alloc::vec::Vec, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct ExplainExecNode { #[prost(message, optional, tag = "1")] @@ -1569,6 +1719,7 @@ pub struct ExplainExecNode { #[prost(bool, tag = "3")] pub verbose: bool, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct CrossJoinExecNode { #[prost(message, optional, boxed, tag = "1")] @@ -1576,6 +1727,7 @@ pub struct CrossJoinExecNode { #[prost(message, optional, boxed, tag = "2")] pub right: ::core::option::Option<::prost::alloc::boxed::Box>, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct PhysicalColumn { #[prost(string, tag = "1")] @@ -1583,6 +1735,7 @@ pub struct PhysicalColumn { #[prost(uint32, tag = "2")] pub index: u32, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct JoinOn { #[prost(message, optional, tag = "1")] @@ -1590,6 +1743,7 @@ pub struct JoinOn { #[prost(message, optional, tag = "2")] pub right: ::core::option::Option, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct EmptyExecNode { #[prost(bool, tag = "1")] @@ -1597,6 +1751,7 @@ pub struct EmptyExecNode { #[prost(message, optional, tag = "2")] pub schema: ::core::option::Option, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct ProjectionExecNode { #[prost(message, optional, boxed, tag = "1")] @@ -1606,6 +1761,7 @@ pub struct ProjectionExecNode { #[prost(string, repeated, tag = "3")] pub expr_name: ::prost::alloc::vec::Vec<::prost::alloc::string::String>, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct WindowAggExecNode { #[prost(message, optional, boxed, tag = "1")] @@ -1617,6 +1773,7 @@ pub struct WindowAggExecNode { #[prost(message, optional, tag = "4")] pub input_schema: ::core::option::Option, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct AggregateExecNode { #[prost(message, repeated, tag = "1")] @@ -1639,6 +1796,7 @@ pub struct AggregateExecNode { #[prost(bool, repeated, tag = "9")] pub groups: ::prost::alloc::vec::Vec, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct GlobalLimitExecNode { #[prost(message, optional, boxed, tag = "1")] @@ -1650,6 +1808,7 @@ pub struct GlobalLimitExecNode { #[prost(int64, tag = "3")] pub fetch: i64, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct LocalLimitExecNode { #[prost(message, optional, boxed, tag = "1")] @@ -1657,6 +1816,7 @@ pub struct LocalLimitExecNode { #[prost(uint32, tag = "2")] pub fetch: u32, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct SortExecNode { #[prost(message, optional, boxed, tag = "1")] @@ -1667,6 +1827,7 @@ pub struct SortExecNode { #[prost(int64, tag = "3")] pub fetch: i64, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct SortPreservingMergeExecNode { #[prost(message, optional, boxed, tag = "1")] @@ -1674,6 +1835,7 @@ pub struct SortPreservingMergeExecNode { #[prost(message, repeated, tag = "2")] pub expr: ::prost::alloc::vec::Vec, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct CoalesceBatchesExecNode { #[prost(message, optional, boxed, tag = "1")] @@ -1681,11 +1843,13 @@ pub struct CoalesceBatchesExecNode { #[prost(uint32, tag = "2")] pub target_batch_size: u32, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct CoalescePartitionsExecNode { #[prost(message, optional, boxed, tag = "1")] pub input: ::core::option::Option<::prost::alloc::boxed::Box>, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct PhysicalHashRepartition { #[prost(message, repeated, tag = "1")] @@ -1693,6 +1857,7 @@ pub struct PhysicalHashRepartition { #[prost(uint64, tag = "2")] pub partition_count: u64, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct RepartitionExecNode { #[prost(message, optional, boxed, tag = "1")] @@ -1702,6 +1867,7 @@ pub struct RepartitionExecNode { } /// Nested message and enum types in `RepartitionExecNode`. pub mod repartition_exec_node { + #[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Oneof)] pub enum PartitionMethod { #[prost(uint64, tag = "2")] @@ -1712,6 +1878,7 @@ pub mod repartition_exec_node { Unknown(u64), } } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct JoinFilter { #[prost(message, optional, tag = "1")] @@ -1721,6 +1888,7 @@ pub struct JoinFilter { #[prost(message, optional, tag = "3")] pub schema: ::core::option::Option, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct ColumnIndex { #[prost(uint32, tag = "1")] @@ -1728,6 +1896,7 @@ pub struct ColumnIndex { #[prost(enumeration = "JoinSide", tag = "2")] pub side: i32, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct PartitionedFile { #[prost(string, tag = "1")] @@ -1741,6 +1910,7 @@ pub struct PartitionedFile { #[prost(message, optional, tag = "5")] pub range: ::core::option::Option, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct FileRange { #[prost(int64, tag = "1")] @@ -1748,6 +1918,7 @@ pub struct FileRange { #[prost(int64, tag = "2")] pub end: i64, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct PartitionStats { #[prost(int64, tag = "1")] @@ -1759,6 +1930,7 @@ pub struct PartitionStats { #[prost(message, repeated, tag = "4")] pub column_stats: ::prost::alloc::vec::Vec, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct Statistics { #[prost(int64, tag = "1")] @@ -1770,6 +1942,7 @@ pub struct Statistics { #[prost(bool, tag = "4")] pub is_exact: bool, } +#[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] pub struct ColumnStats { #[prost(message, optional, tag = "1")] @@ -1810,6 +1983,20 @@ impl JoinType { JoinType::Rightanti => "RIGHTANTI", } } + /// Creates an enum from field names used in the ProtoBuf definition. + pub fn from_str_name(value: &str) -> ::core::option::Option { + match value { + "INNER" => Some(Self::Inner), + "LEFT" => Some(Self::Left), + "RIGHT" => Some(Self::Right), + "FULL" => Some(Self::Full), + "LEFTSEMI" => Some(Self::Leftsemi), + "LEFTANTI" => Some(Self::Leftanti), + "RIGHTSEMI" => Some(Self::Rightsemi), + "RIGHTANTI" => Some(Self::Rightanti), + _ => None, + } + } } #[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)] #[repr(i32)] @@ -1828,6 +2015,14 @@ impl JoinConstraint { JoinConstraint::Using => "USING", } } + /// Creates an enum from field names used in the ProtoBuf definition. + pub fn from_str_name(value: &str) -> ::core::option::Option { + match value { + "ON" => Some(Self::On), + "USING" => Some(Self::Using), + _ => None, + } + } } #[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)] #[repr(i32)] @@ -1988,6 +2183,85 @@ impl ScalarFunction { ScalarFunction::Uuid => "Uuid", } } + /// Creates an enum from field names used in the ProtoBuf definition. + pub fn from_str_name(value: &str) -> ::core::option::Option { + match value { + "Abs" => Some(Self::Abs), + "Acos" => Some(Self::Acos), + "Asin" => Some(Self::Asin), + "Atan" => Some(Self::Atan), + "Ascii" => Some(Self::Ascii), + "Ceil" => Some(Self::Ceil), + "Cos" => Some(Self::Cos), + "Digest" => Some(Self::Digest), + "Exp" => Some(Self::Exp), + "Floor" => Some(Self::Floor), + "Ln" => Some(Self::Ln), + "Log" => Some(Self::Log), + "Log10" => Some(Self::Log10), + "Log2" => Some(Self::Log2), + "Round" => Some(Self::Round), + "Signum" => Some(Self::Signum), + "Sin" => Some(Self::Sin), + "Sqrt" => Some(Self::Sqrt), + "Tan" => Some(Self::Tan), + "Trunc" => Some(Self::Trunc), + "Array" => Some(Self::Array), + "RegexpMatch" => Some(Self::RegexpMatch), + "BitLength" => Some(Self::BitLength), + "Btrim" => Some(Self::Btrim), + "CharacterLength" => Some(Self::CharacterLength), + "Chr" => Some(Self::Chr), + "Concat" => Some(Self::Concat), + "ConcatWithSeparator" => Some(Self::ConcatWithSeparator), + "DatePart" => Some(Self::DatePart), + "DateTrunc" => Some(Self::DateTrunc), + "InitCap" => Some(Self::InitCap), + "Left" => Some(Self::Left), + "Lpad" => Some(Self::Lpad), + "Lower" => Some(Self::Lower), + "Ltrim" => Some(Self::Ltrim), + "MD5" => Some(Self::Md5), + "NullIf" => Some(Self::NullIf), + "OctetLength" => Some(Self::OctetLength), + "Random" => Some(Self::Random), + "RegexpReplace" => Some(Self::RegexpReplace), + "Repeat" => Some(Self::Repeat), + "Replace" => Some(Self::Replace), + "Reverse" => Some(Self::Reverse), + "Right" => Some(Self::Right), + "Rpad" => Some(Self::Rpad), + "Rtrim" => Some(Self::Rtrim), + "SHA224" => Some(Self::Sha224), + "SHA256" => Some(Self::Sha256), + "SHA384" => Some(Self::Sha384), + "SHA512" => Some(Self::Sha512), + "SplitPart" => Some(Self::SplitPart), + "StartsWith" => Some(Self::StartsWith), + "Strpos" => Some(Self::Strpos), + "Substr" => Some(Self::Substr), + "ToHex" => Some(Self::ToHex), + "ToTimestamp" => Some(Self::ToTimestamp), + "ToTimestampMillis" => Some(Self::ToTimestampMillis), + "ToTimestampMicros" => Some(Self::ToTimestampMicros), + "ToTimestampSeconds" => Some(Self::ToTimestampSeconds), + "Now" => Some(Self::Now), + "Translate" => Some(Self::Translate), + "Trim" => Some(Self::Trim), + "Upper" => Some(Self::Upper), + "Coalesce" => Some(Self::Coalesce), + "Power" => Some(Self::Power), + "StructFun" => Some(Self::StructFun), + "FromUnixtime" => Some(Self::FromUnixtime), + "Atan2" => Some(Self::Atan2), + "DateBin" => Some(Self::DateBin), + "ArrowTypeof" => Some(Self::ArrowTypeof), + "CurrentDate" => Some(Self::CurrentDate), + "CurrentTime" => Some(Self::CurrentTime), + "Uuid" => Some(Self::Uuid), + _ => None, + } + } } #[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)] #[repr(i32)] @@ -2042,6 +2316,33 @@ impl AggregateFunction { AggregateFunction::Median => "MEDIAN", } } + /// Creates an enum from field names used in the ProtoBuf definition. + pub fn from_str_name(value: &str) -> ::core::option::Option { + match value { + "MIN" => Some(Self::Min), + "MAX" => Some(Self::Max), + "SUM" => Some(Self::Sum), + "AVG" => Some(Self::Avg), + "COUNT" => Some(Self::Count), + "APPROX_DISTINCT" => Some(Self::ApproxDistinct), + "ARRAY_AGG" => Some(Self::ArrayAgg), + "VARIANCE" => Some(Self::Variance), + "VARIANCE_POP" => Some(Self::VariancePop), + "COVARIANCE" => Some(Self::Covariance), + "COVARIANCE_POP" => Some(Self::CovariancePop), + "STDDEV" => Some(Self::Stddev), + "STDDEV_POP" => Some(Self::StddevPop), + "CORRELATION" => Some(Self::Correlation), + "APPROX_PERCENTILE_CONT" => Some(Self::ApproxPercentileCont), + "APPROX_MEDIAN" => Some(Self::ApproxMedian), + "APPROX_PERCENTILE_CONT_WITH_WEIGHT" => { + Some(Self::ApproxPercentileContWithWeight) + } + "GROUPING" => Some(Self::Grouping), + "MEDIAN" => Some(Self::Median), + _ => None, + } + } } #[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)] #[repr(i32)] @@ -2078,6 +2379,23 @@ impl BuiltInWindowFunction { BuiltInWindowFunction::NthValue => "NTH_VALUE", } } + /// Creates an enum from field names used in the ProtoBuf definition. + pub fn from_str_name(value: &str) -> ::core::option::Option { + match value { + "ROW_NUMBER" => Some(Self::RowNumber), + "RANK" => Some(Self::Rank), + "DENSE_RANK" => Some(Self::DenseRank), + "PERCENT_RANK" => Some(Self::PercentRank), + "CUME_DIST" => Some(Self::CumeDist), + "NTILE" => Some(Self::Ntile), + "LAG" => Some(Self::Lag), + "LEAD" => Some(Self::Lead), + "FIRST_VALUE" => Some(Self::FirstValue), + "LAST_VALUE" => Some(Self::LastValue), + "NTH_VALUE" => Some(Self::NthValue), + _ => None, + } + } } #[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)] #[repr(i32)] @@ -2098,6 +2416,15 @@ impl WindowFrameUnits { WindowFrameUnits::Groups => "GROUPS", } } + /// Creates an enum from field names used in the ProtoBuf definition. + pub fn from_str_name(value: &str) -> ::core::option::Option { + match value { + "ROWS" => Some(Self::Rows), + "RANGE" => Some(Self::Range), + "GROUPS" => Some(Self::Groups), + _ => None, + } + } } #[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)] #[repr(i32)] @@ -2118,6 +2445,15 @@ impl WindowFrameBoundType { WindowFrameBoundType::Following => "FOLLOWING", } } + /// Creates an enum from field names used in the ProtoBuf definition. + pub fn from_str_name(value: &str) -> ::core::option::Option { + match value { + "CURRENT_ROW" => Some(Self::CurrentRow), + "PRECEDING" => Some(Self::Preceding), + "FOLLOWING" => Some(Self::Following), + _ => None, + } + } } #[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)] #[repr(i32)] @@ -2136,6 +2472,14 @@ impl DateUnit { DateUnit::DateMillisecond => "DateMillisecond", } } + /// Creates an enum from field names used in the ProtoBuf definition. + pub fn from_str_name(value: &str) -> ::core::option::Option { + match value { + "Day" => Some(Self::Day), + "DateMillisecond" => Some(Self::DateMillisecond), + _ => None, + } + } } #[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)] #[repr(i32)] @@ -2158,6 +2502,16 @@ impl TimeUnit { TimeUnit::Nanosecond => "Nanosecond", } } + /// Creates an enum from field names used in the ProtoBuf definition. + pub fn from_str_name(value: &str) -> ::core::option::Option { + match value { + "Second" => Some(Self::Second), + "Millisecond" => Some(Self::Millisecond), + "Microsecond" => Some(Self::Microsecond), + "Nanosecond" => Some(Self::Nanosecond), + _ => None, + } + } } #[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)] #[repr(i32)] @@ -2178,6 +2532,15 @@ impl IntervalUnit { IntervalUnit::MonthDayNano => "MonthDayNano", } } + /// Creates an enum from field names used in the ProtoBuf definition. + pub fn from_str_name(value: &str) -> ::core::option::Option { + match value { + "YearMonth" => Some(Self::YearMonth), + "DayTime" => Some(Self::DayTime), + "MonthDayNano" => Some(Self::MonthDayNano), + _ => None, + } + } } #[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)] #[repr(i32)] @@ -2196,6 +2559,14 @@ impl UnionMode { UnionMode::Dense => "dense", } } + /// Creates an enum from field names used in the ProtoBuf definition. + pub fn from_str_name(value: &str) -> ::core::option::Option { + match value { + "sparse" => Some(Self::Sparse), + "dense" => Some(Self::Dense), + _ => None, + } + } } #[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)] #[repr(i32)] @@ -2216,6 +2587,15 @@ impl PartitionMode { PartitionMode::Auto => "AUTO", } } + /// Creates an enum from field names used in the ProtoBuf definition. + pub fn from_str_name(value: &str) -> ::core::option::Option { + match value { + "COLLECT_LEFT" => Some(Self::CollectLeft), + "PARTITIONED" => Some(Self::Partitioned), + "AUTO" => Some(Self::Auto), + _ => None, + } + } } #[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)] #[repr(i32)] @@ -2236,6 +2616,15 @@ impl AggregateMode { AggregateMode::FinalPartitioned => "FINAL_PARTITIONED", } } + /// Creates an enum from field names used in the ProtoBuf definition. + pub fn from_str_name(value: &str) -> ::core::option::Option { + match value { + "PARTIAL" => Some(Self::Partial), + "FINAL" => Some(Self::Final), + "FINAL_PARTITIONED" => Some(Self::FinalPartitioned), + _ => None, + } + } } #[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)] #[repr(i32)] @@ -2254,4 +2643,12 @@ impl JoinSide { JoinSide::RightSide => "RIGHT_SIDE", } } + /// Creates an enum from field names used in the ProtoBuf definition. + pub fn from_str_name(value: &str) -> ::core::option::Option { + match value { + "LEFT_SIDE" => Some(Self::LeftSide), + "RIGHT_SIDE" => Some(Self::RightSide), + _ => None, + } + } } diff --git a/datafusion/row/Cargo.toml b/datafusion/row/Cargo.toml index 2ae8cb3c4b48..23d3f528f08a 100644 --- a/datafusion/row/Cargo.toml +++ b/datafusion/row/Cargo.toml @@ -37,7 +37,7 @@ path = "src/lib.rs" jit = ["datafusion-jit"] [dependencies] -arrow = "29.0.0" +arrow = "30.0.1" datafusion-common = { path = "../common", version = "16.0.0" } datafusion-jit = { path = "../jit", version = "16.0.0", optional = true } paste = "^1.0" diff --git a/datafusion/sql/Cargo.toml b/datafusion/sql/Cargo.toml index 4dfd9b97cda5..025139ad9936 100644 --- a/datafusion/sql/Cargo.toml +++ b/datafusion/sql/Cargo.toml @@ -37,7 +37,7 @@ default = ["unicode_expressions"] unicode_expressions = [] [dependencies] -arrow-schema = "29.0.0" +arrow-schema = "30.0.1" datafusion-common = { path = "../common", version = "16.0.0" } datafusion-expr = { path = "../expr", version = "16.0.0" } log = "^0.4" diff --git a/parquet-test-utils/Cargo.toml b/parquet-test-utils/Cargo.toml index fc2d964613f5..858c350dac2a 100644 --- a/parquet-test-utils/Cargo.toml +++ b/parquet-test-utils/Cargo.toml @@ -25,4 +25,4 @@ edition = "2021" [dependencies] datafusion = { path = "../datafusion/core" } object_store = "0.5.0" -parquet = "29.0.0" +parquet = "30.0.1" diff --git a/test-utils/Cargo.toml b/test-utils/Cargo.toml index bde0314ba65e..54b93540a9f5 100644 --- a/test-utils/Cargo.toml +++ b/test-utils/Cargo.toml @@ -23,7 +23,7 @@ edition = "2021" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [dependencies] -arrow = { version = "29.0.0", features = ["prettyprint"] } +arrow = { version = "30.0.1", features = ["prettyprint"] } datafusion-common = { path = "../datafusion/common" } env_logger = "0.10.0" rand = "0.8"