diff --git a/Cargo.lock b/Cargo.lock index bc97507d64820..6914453b3da2c 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1715,7 +1715,7 @@ dependencies = [ [[package]] name = "datafusion" -version = "52.2.0" +version = "52.3.0" dependencies = [ "arrow", "arrow-schema", @@ -1789,7 +1789,7 @@ dependencies = [ [[package]] name = "datafusion-benchmarks" -version = "52.2.0" +version = "52.3.0" dependencies = [ "arrow", "clap", @@ -1814,7 +1814,7 @@ dependencies = [ [[package]] name = "datafusion-catalog" -version = "52.2.0" +version = "52.3.0" dependencies = [ "arrow", "async-trait", @@ -1837,7 +1837,7 @@ dependencies = [ [[package]] name = "datafusion-catalog-listing" -version = "52.2.0" +version = "52.3.0" dependencies = [ "arrow", "async-trait", @@ -1859,7 +1859,7 @@ dependencies = [ [[package]] name = "datafusion-cli" -version = "52.2.0" +version = "52.3.0" dependencies = [ "arrow", "async-trait", @@ -1890,7 +1890,7 @@ dependencies = [ [[package]] name = "datafusion-common" -version = "52.2.0" +version = "52.3.0" dependencies = [ "ahash", "apache-avro", @@ -1918,7 +1918,7 @@ dependencies = [ [[package]] name = "datafusion-common-runtime" -version = "52.2.0" +version = "52.3.0" dependencies = [ "futures", "log", @@ -1927,7 +1927,7 @@ dependencies = [ [[package]] name = "datafusion-datasource" -version = "52.2.0" +version = "52.3.0" dependencies = [ "arrow", "async-compression", @@ -1962,7 +1962,7 @@ dependencies = [ [[package]] name = "datafusion-datasource-arrow" -version = "52.2.0" +version = "52.3.0" dependencies = [ "arrow", "arrow-ipc", @@ -1985,7 +1985,7 @@ dependencies = [ [[package]] name = "datafusion-datasource-avro" -version = "52.2.0" +version = "52.3.0" dependencies = [ "apache-avro", "arrow", @@ -2004,7 +2004,7 @@ dependencies = [ [[package]] name = "datafusion-datasource-csv" -version = "52.2.0" +version = "52.3.0" dependencies = [ "arrow", "async-trait", @@ -2025,7 +2025,7 @@ dependencies = [ [[package]] name = "datafusion-datasource-json" -version = "52.2.0" +version = "52.3.0" dependencies = [ "arrow", "async-trait", @@ -2047,7 +2047,7 @@ dependencies = [ [[package]] name = "datafusion-datasource-parquet" -version = "52.2.0" +version = "52.3.0" dependencies = [ "arrow", "async-trait", @@ -2080,11 +2080,11 @@ dependencies = [ [[package]] name = "datafusion-doc" -version = "52.2.0" +version = "52.3.0" [[package]] name = "datafusion-examples" -version = "52.2.0" +version = "52.3.0" dependencies = [ "arrow", "arrow-flight", @@ -2125,7 +2125,7 @@ dependencies = [ [[package]] name = "datafusion-execution" -version = "52.2.0" +version = "52.3.0" dependencies = [ "arrow", "arrow-buffer", @@ -2148,7 +2148,7 @@ dependencies = [ [[package]] name = "datafusion-expr" -version = "52.2.0" +version = "52.3.0" dependencies = [ "arrow", "async-trait", @@ -2172,7 +2172,7 @@ dependencies = [ [[package]] name = "datafusion-expr-common" -version = "52.2.0" +version = "52.3.0" dependencies = [ "arrow", "datafusion-common", @@ -2184,7 +2184,7 @@ dependencies = [ [[package]] name = "datafusion-ffi" -version = "52.2.0" +version = "52.3.0" dependencies = [ "abi_stable", "arrow", @@ -2218,7 +2218,7 @@ dependencies = [ [[package]] name = "datafusion-functions" -version = "52.2.0" +version = "52.3.0" dependencies = [ "arrow", "arrow-buffer", @@ -2252,7 +2252,7 @@ dependencies = [ [[package]] name = "datafusion-functions-aggregate" -version = "52.2.0" +version = "52.3.0" dependencies = [ "ahash", "arrow", @@ -2274,7 +2274,7 @@ dependencies = [ [[package]] name = "datafusion-functions-aggregate-common" -version = "52.2.0" +version = "52.3.0" dependencies = [ "ahash", "arrow", @@ -2287,7 +2287,7 @@ dependencies = [ [[package]] name = "datafusion-functions-nested" -version = "52.2.0" +version = "52.3.0" dependencies = [ "arrow", "arrow-ord", @@ -2312,7 +2312,7 @@ dependencies = [ [[package]] name = "datafusion-functions-table" -version = "52.2.0" +version = "52.3.0" dependencies = [ "arrow", "async-trait", @@ -2326,7 +2326,7 @@ dependencies = [ [[package]] name = "datafusion-functions-window" -version = "52.2.0" +version = "52.3.0" dependencies = [ "arrow", "criterion", @@ -2343,7 +2343,7 @@ dependencies = [ [[package]] name = "datafusion-functions-window-common" -version = "52.2.0" +version = "52.3.0" dependencies = [ "datafusion-common", "datafusion-physical-expr-common", @@ -2351,7 +2351,7 @@ dependencies = [ [[package]] name = "datafusion-macros" -version = "52.2.0" +version = "52.3.0" dependencies = [ "datafusion-doc", "quote", @@ -2360,7 +2360,7 @@ dependencies = [ [[package]] name = "datafusion-optimizer" -version = "52.2.0" +version = "52.3.0" dependencies = [ "arrow", "async-trait", @@ -2387,7 +2387,7 @@ dependencies = [ [[package]] name = "datafusion-physical-expr" -version = "52.2.0" +version = "52.3.0" dependencies = [ "ahash", "arrow", @@ -2414,7 +2414,7 @@ dependencies = [ [[package]] name = "datafusion-physical-expr-adapter" -version = "52.2.0" +version = "52.3.0" dependencies = [ "arrow", "datafusion-common", @@ -2427,7 +2427,7 @@ dependencies = [ [[package]] name = "datafusion-physical-expr-common" -version = "52.2.0" +version = "52.3.0" dependencies = [ "ahash", "arrow", @@ -2442,7 +2442,7 @@ dependencies = [ [[package]] name = "datafusion-physical-optimizer" -version = "52.2.0" +version = "52.3.0" dependencies = [ "arrow", "datafusion-common", @@ -2463,7 +2463,7 @@ dependencies = [ [[package]] name = "datafusion-physical-plan" -version = "52.2.0" +version = "52.3.0" dependencies = [ "ahash", "arrow", @@ -2500,7 +2500,7 @@ dependencies = [ [[package]] name = "datafusion-proto" -version = "52.2.0" +version = "52.3.0" dependencies = [ "arrow", "async-trait", @@ -2538,7 +2538,7 @@ dependencies = [ [[package]] name = "datafusion-proto-common" -version = "52.2.0" +version = "52.3.0" dependencies = [ "arrow", "datafusion-common", @@ -2550,7 +2550,7 @@ dependencies = [ [[package]] name = "datafusion-pruning" -version = "52.2.0" +version = "52.3.0" dependencies = [ "arrow", "datafusion-common", @@ -2568,7 +2568,7 @@ dependencies = [ [[package]] name = "datafusion-session" -version = "52.2.0" +version = "52.3.0" dependencies = [ "async-trait", "datafusion-common", @@ -2580,7 +2580,7 @@ dependencies = [ [[package]] name = "datafusion-spark" -version = "52.2.0" +version = "52.3.0" dependencies = [ "arrow", "bigdecimal", @@ -2606,7 +2606,7 @@ dependencies = [ [[package]] name = "datafusion-sql" -version = "52.2.0" +version = "52.3.0" dependencies = [ "arrow", "bigdecimal", @@ -2632,7 +2632,7 @@ dependencies = [ [[package]] name = "datafusion-sqllogictest" -version = "52.2.0" +version = "52.3.0" dependencies = [ "arrow", "async-trait", @@ -2663,7 +2663,7 @@ dependencies = [ [[package]] name = "datafusion-substrait" -version = "52.2.0" +version = "52.3.0" dependencies = [ "async-recursion", "async-trait", @@ -2684,7 +2684,7 @@ dependencies = [ [[package]] name = "datafusion-wasmtest" -version = "52.2.0" +version = "52.3.0" dependencies = [ "bytes", "chrono", diff --git a/Cargo.toml b/Cargo.toml index 7aa959702d019..a185cd874a013 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -79,7 +79,7 @@ repository = "https://github.com/apache/datafusion" # Define Minimum Supported Rust Version (MSRV) rust-version = "1.88.0" # Define DataFusion version -version = "52.2.0" +version = "52.3.0" [workspace.dependencies] # We turn off default-features for some dependencies here so the workspaces which inherit them can @@ -112,43 +112,43 @@ chrono = { version = "0.4.44", default-features = false } criterion = "0.8" ctor = "0.6.3" dashmap = "6.0.1" -datafusion = { path = "datafusion/core", version = "52.2.0", default-features = false } -datafusion-catalog = { path = "datafusion/catalog", version = "52.2.0" } -datafusion-catalog-listing = { path = "datafusion/catalog-listing", version = "52.2.0" } -datafusion-common = { path = "datafusion/common", version = "52.2.0", default-features = false } -datafusion-common-runtime = { path = "datafusion/common-runtime", version = "52.2.0" } -datafusion-datasource = { path = "datafusion/datasource", version = "52.2.0", default-features = false } -datafusion-datasource-arrow = { path = "datafusion/datasource-arrow", version = "52.2.0", default-features = false } -datafusion-datasource-avro = { path = "datafusion/datasource-avro", version = "52.2.0", default-features = false } -datafusion-datasource-csv = { path = "datafusion/datasource-csv", version = "52.2.0", default-features = false } -datafusion-datasource-json = { path = "datafusion/datasource-json", version = "52.2.0", default-features = false } -datafusion-datasource-parquet = { path = "datafusion/datasource-parquet", version = "52.2.0", default-features = false } -datafusion-doc = { path = "datafusion/doc", version = "52.2.0" } -datafusion-execution = { path = "datafusion/execution", version = "52.2.0", default-features = false } -datafusion-expr = { path = "datafusion/expr", version = "52.2.0", default-features = false } -datafusion-expr-common = { path = "datafusion/expr-common", version = "52.2.0" } -datafusion-ffi = { path = "datafusion/ffi", version = "52.2.0" } -datafusion-functions = { path = "datafusion/functions", version = "52.2.0" } -datafusion-functions-aggregate = { path = "datafusion/functions-aggregate", version = "52.2.0" } -datafusion-functions-aggregate-common = { path = "datafusion/functions-aggregate-common", version = "52.2.0" } -datafusion-functions-nested = { path = "datafusion/functions-nested", version = "52.2.0", default-features = false } -datafusion-functions-table = { path = "datafusion/functions-table", version = "52.2.0" } -datafusion-functions-window = { path = "datafusion/functions-window", version = "52.2.0" } -datafusion-functions-window-common = { path = "datafusion/functions-window-common", version = "52.2.0" } -datafusion-macros = { path = "datafusion/macros", version = "52.2.0" } -datafusion-optimizer = { path = "datafusion/optimizer", version = "52.2.0", default-features = false } -datafusion-physical-expr = { path = "datafusion/physical-expr", version = "52.2.0", default-features = false } -datafusion-physical-expr-adapter = { path = "datafusion/physical-expr-adapter", version = "52.2.0", default-features = false } -datafusion-physical-expr-common = { path = "datafusion/physical-expr-common", version = "52.2.0", default-features = false } -datafusion-physical-optimizer = { path = "datafusion/physical-optimizer", version = "52.2.0" } -datafusion-physical-plan = { path = "datafusion/physical-plan", version = "52.2.0" } -datafusion-proto = { path = "datafusion/proto", version = "52.2.0" } -datafusion-proto-common = { path = "datafusion/proto-common", version = "52.2.0" } -datafusion-pruning = { path = "datafusion/pruning", version = "52.2.0" } -datafusion-session = { path = "datafusion/session", version = "52.2.0" } -datafusion-spark = { path = "datafusion/spark", version = "52.2.0" } -datafusion-sql = { path = "datafusion/sql", version = "52.2.0" } -datafusion-substrait = { path = "datafusion/substrait", version = "52.2.0" } +datafusion = { path = "datafusion/core", version = "52.3.0", default-features = false } +datafusion-catalog = { path = "datafusion/catalog", version = "52.3.0" } +datafusion-catalog-listing = { path = "datafusion/catalog-listing", version = "52.3.0" } +datafusion-common = { path = "datafusion/common", version = "52.3.0", default-features = false } +datafusion-common-runtime = { path = "datafusion/common-runtime", version = "52.3.0" } +datafusion-datasource = { path = "datafusion/datasource", version = "52.3.0", default-features = false } +datafusion-datasource-arrow = { path = "datafusion/datasource-arrow", version = "52.3.0", default-features = false } +datafusion-datasource-avro = { path = "datafusion/datasource-avro", version = "52.3.0", default-features = false } +datafusion-datasource-csv = { path = "datafusion/datasource-csv", version = "52.3.0", default-features = false } +datafusion-datasource-json = { path = "datafusion/datasource-json", version = "52.3.0", default-features = false } +datafusion-datasource-parquet = { path = "datafusion/datasource-parquet", version = "52.3.0", default-features = false } +datafusion-doc = { path = "datafusion/doc", version = "52.3.0" } +datafusion-execution = { path = "datafusion/execution", version = "52.3.0", default-features = false } +datafusion-expr = { path = "datafusion/expr", version = "52.3.0", default-features = false } +datafusion-expr-common = { path = "datafusion/expr-common", version = "52.3.0" } +datafusion-ffi = { path = "datafusion/ffi", version = "52.3.0" } +datafusion-functions = { path = "datafusion/functions", version = "52.3.0" } +datafusion-functions-aggregate = { path = "datafusion/functions-aggregate", version = "52.3.0" } +datafusion-functions-aggregate-common = { path = "datafusion/functions-aggregate-common", version = "52.3.0" } +datafusion-functions-nested = { path = "datafusion/functions-nested", version = "52.3.0", default-features = false } +datafusion-functions-table = { path = "datafusion/functions-table", version = "52.3.0" } +datafusion-functions-window = { path = "datafusion/functions-window", version = "52.3.0" } +datafusion-functions-window-common = { path = "datafusion/functions-window-common", version = "52.3.0" } +datafusion-macros = { path = "datafusion/macros", version = "52.3.0" } +datafusion-optimizer = { path = "datafusion/optimizer", version = "52.3.0", default-features = false } +datafusion-physical-expr = { path = "datafusion/physical-expr", version = "52.3.0", default-features = false } +datafusion-physical-expr-adapter = { path = "datafusion/physical-expr-adapter", version = "52.3.0", default-features = false } +datafusion-physical-expr-common = { path = "datafusion/physical-expr-common", version = "52.3.0", default-features = false } +datafusion-physical-optimizer = { path = "datafusion/physical-optimizer", version = "52.3.0" } +datafusion-physical-plan = { path = "datafusion/physical-plan", version = "52.3.0" } +datafusion-proto = { path = "datafusion/proto", version = "52.3.0" } +datafusion-proto-common = { path = "datafusion/proto-common", version = "52.3.0" } +datafusion-pruning = { path = "datafusion/pruning", version = "52.3.0" } +datafusion-session = { path = "datafusion/session", version = "52.3.0" } +datafusion-spark = { path = "datafusion/spark", version = "52.3.0" } +datafusion-sql = { path = "datafusion/sql", version = "52.3.0" } +datafusion-substrait = { path = "datafusion/substrait", version = "52.3.0" } doc-comment = "0.3" env_logger = "0.11" diff --git a/dev/changelog/52.3.0.md b/dev/changelog/52.3.0.md new file mode 100644 index 0000000000000..ed505b7fc2d0a --- /dev/null +++ b/dev/changelog/52.3.0.md @@ -0,0 +1,50 @@ + + +# Apache DataFusion 52.3.0 Changelog + +This release consists of 7 commits from 4 contributors. See credits at the end of this changelog for more information. + +See the [upgrade guide](https://datafusion.apache.org/library-user-guide/upgrading.html) for information on how to upgrade from previous versions. + +**Performance related:** + +- [branch-52] perf: sort replace free()->try_grow() pattern with try_resize() to reduce memory pool interactions [#20732](https://github.com/apache/datafusion/pull/20732) (mbutrovich) + +**Other:** + +- [branch-52] Backport fix: SortMergeJoin don't wait for all input before emitting #20482 [#20699](https://github.com/apache/datafusion/pull/20699) (mbutrovich) +- [branch-52] Fix Arrow Spill Underrun (#20159) [#20684](https://github.com/apache/datafusion/pull/20684) (hareshkh) +- [branch-52] Fix constant value from stats (#20042) [#20709](https://github.com/apache/datafusion/pull/20709) (alamb) +- [branch-52] fix: `HashJoin` panic with String dictionary keys (don't flatten keys) (#20505) [#20708](https://github.com/apache/datafusion/pull/20708) (alamb) +- [branch-52] FFI_TableOptions are using default values only [#20705](https://github.com/apache/datafusion/pull/20705) (timsaucer) +- [branch-52] Fix repartition from dropping data when spilling (#20672) [#20777](https://github.com/apache/datafusion/pull/20777) (alamb) + +## Credits + +Thank you to everyone who contributed to this release. Here is a breakdown of commits (PRs merged) per contributor. + +``` + 3 Andrew Lamb + 2 Matt Butrovich + 1 Haresh Khanna + 1 Tim Saucer +``` + +Thank you also to everyone who contributed in other ways such as filing issues, reviewing PRs, and providing feedback on this release. diff --git a/docs/source/user-guide/configs.md b/docs/source/user-guide/configs.md index 484ac7a272d9b..6f6d5b205877f 100644 --- a/docs/source/user-guide/configs.md +++ b/docs/source/user-guide/configs.md @@ -101,7 +101,7 @@ The following configuration settings are available: | datafusion.execution.parquet.dictionary_page_size_limit | 1048576 | (writing) Sets best effort maximum dictionary page size, in bytes | | datafusion.execution.parquet.statistics_enabled | page | (writing) Sets if statistics are enabled for any column Valid values are: "none", "chunk", and "page" These values are not case sensitive. If NULL, uses default parquet writer setting | | datafusion.execution.parquet.max_row_group_size | 1048576 | (writing) Target maximum number of rows in each row group (defaults to 1M rows). Writing larger row groups requires more memory to write, but can get better compression and be faster to read. | -| datafusion.execution.parquet.created_by | datafusion version 52.2.0 | (writing) Sets "created by" property | +| datafusion.execution.parquet.created_by | datafusion version 52.3.0 | (writing) Sets "created by" property | | datafusion.execution.parquet.column_index_truncate_length | 64 | (writing) Sets column index truncate length | | datafusion.execution.parquet.statistics_truncate_length | 64 | (writing) Sets statistics truncate length. If NULL, uses default parquet writer setting | | datafusion.execution.parquet.data_page_row_count_limit | 20000 | (writing) Sets best effort maximum number of rows in data page |