This is an automated email from the ASF dual-hosted git repository.

alamb pushed a change to branch 
dependabot/npm_and_yarn/datafusion/wasmtest/datafusion-wasm-app/multi-96c788614a
in repository https://gitbox.apache.org/repos/asf/datafusion.git


    from 6d88c63c53 chore(deps): bump on-headers and compression
     add 3c95281974 feat: improve LiteralGuarantee for the case like `(a=1 AND 
b=1) OR (a=2 AND b=3)` (#16762)
     add 5dd706d631 [main] Update version to 49.0.0, add 49.0.0 changelog 
(#16855)
     add 518fb4b536 fix(build-wasm): put `arrow-ipc/zstd` dep under 
`compression` feature flag (#16844)
     add 3abd63870f chore(deps): bump serde_json from 1.0.140 to 1.0.141 
(#16863)
     add 14ac31d0e0 chore(deps): bump aws-config from 1.8.1 to 1.8.2 (#16864)
     add 3a40625e2e test: Fix flaky join tests (#16860)
     add 3d4fdf24ec chore(deps): bump rand from 0.9.1 to 0.9.2 (#16882)
     add 51f04c872a Report error when `SessionState::sql_to_expr_with_alias` 
does not consume all input (#16811)
     add dbc03fa4f6 fix another flaky join test (#16880)
     add d553ffdff8 Improve async_udf example and docs (#16846)
     add 07516aa4a3 Chore: add unit tests for chr function (#16856)
     add d9e963eab2 remove deprecated methods from FileScanConfig / 
DataSourceExec (#16901)
     add 3b4eda5c61 Support utf8view for spark hex (#16885)
     add a6d4798c45 Fixes 3 bugs during serialization and deserialization of 
physical plans (#16858)
     add b7da86e9ad feat(spark): Implement Spark `string` function `luhn_check` 
(#16848)
     add bb1b55cfba chore(deps): bump aws-config from 1.8.2 to 1.8.3 (#16912)
     add 070517a87f Derive UDF equality from PartialEq, Hash (#16842)
     add 675b96c2b4 Ensure Substrait consumer can handle expressions in 
VirtualTable (#16857)
     add 8b9204cfeb Mutable Join Unwind (#16883)
     add 2ff02b25ec feat(spark): implement Spark datetime function last_day 
(#16828)
     add 5e0b2d0554 fix(datafusion-proto): support serializing/deserilizing 
ArrowFormat tables (#16875)
     add 871d4b55dc ScalarValue Default + Min + Max (#16891)
     add 4f533582d6 fix: `PlaceholderRowExec::partition_statistics` (#16851)
     add 84c8881b64 minor: add is_superset() method for Interval's (#16895)
     add 9deec2ad72 minor: implement with_new_expressions for 
AggregateFunctionExpr (#16897)
     add cbda394c0d Update enforce_distribution.rs (#16913)
     add 4b9a468cc1 feat: Add 
`ScalarValue::{new_one,new_zero,new_ten,distance}` support for `Decimal128` and 
`Decimal256` (#16831)
     add fd08e726dc Implement Helpers for ScopedTimerGuard and Time Structs 
(#16911)
     add 8bf7123687 Fix Partial Sort Get Slice Point Between Batches (#16881)
     add 71dbdf6f19 fix: skip predicates on struct unnest in PushDownFilter 
(#16790)
     add e033d42251 optimize initcap function by avoiding memory allocation 
(#16878)
     add ff777eae44 Fix `schema_adapter` integration tests not running (#16835)
     add 8d74be8ce4 Docs: Update Upgrading.md to reflect 49.0.0 is released 
(#16853)
     add e412859a04 Update release process (#16929)
     add 939d3c544e Fix `next_up` and `next_down` behavior for zero float 
values (#16745)
     add 9f3e7dce69 Add Fetch Property to OutputRequirementExec (#16892)
     add c6d5520716 feat: support distinct for window (#16925)
     add e1a5cdf6db Support multiple ordered `array_agg` aggregations (#16625)
     add ec8c34b711 chore(deps): bump tokio from 1.46.1 to 1.47.0 (#16952)
     add d3def0ea8b chore(deps): bump serde_json from 1.0.140 to 1.0.141 
(#16951)
     add c3ec964445 chore: Remove attributes to allow dead_code that aren't 
relevant anymore (#16953)
     add 764d547edf speedup `date_trunc` (~7x faster)  in some cases (#16859)
     add b7c014a2c8 fix: regex bench (#16890)
     add 5421825b62 feat: add multi level merge sort that will always fit in 
memory (#15700)
     add aab44fdaae feat: [datafusion-spark] Implement `next_day` function 
(#16780)
     add 56394e0a50 feat: Support distinct window for sum (#16943)
     add 6f74fb047d chore(deps): bump rand from 0.9.1 to 0.9.2 (#16960)
     add cca9d4c537 chore(deps): bump ctor from 0.4.2 to 0.4.3 (#16961)
     add 949917a6e0 Remove references to DataFusion for Ray sub project now 
that it is no longer maintained (#16966)
     add f2086f3fa7 Add `temp_directory` and `max_temp_directory_size` runtime 
config variables (#16934)
     add 94e85488df disallow pushdown of volatile functions (#16861)
     add 0183244a42 remove warning from every file open (#16968)
     add 9b27952303 Pin github actions to commit sha (#16964)
     add b10f453e7b Enable physical filter pushdown for hash joins (#16954)
     add 677f7231be feat(spark): implement Spark math function rint (#16924)
     add 5cdb7a2404 Include full DataType in TopKAggregateStream results
     add 3dc3aaa86e Use tokio::task::coop::poll_proceed by default in 
CooperativeStream (#16748)
     add 853eee09b3 Add benchmark utility to profile peak memory usage (#16814)
     add e6f4c7f8a5 chore(deps): bump indicatif from 0.17.11 to 0.18.0 (#16992)
     add d376a32f1f Add `sql_parser.default_null_ordering` config option to 
customize the default null ordering (#16963)
     add 2a90ff606d Added Example for `Statistical Functions` in Docs (#16927)
     add 31c3e58797 test(datafusion-cli): migrate tests to `insta` in 
`print_format.rs` (#16993)
     add 21362aa53d remove 'spill_record_batch_by_size' api (#16958)
     add 6ea01d1336 chore(deps): bump serde_json from 1.0.141 to 1.0.142 
(#17006)
     add 494851a2bd Feature: Improve hash  Expr performance (#16977)
     add 9d6f923f85 Add tests for yielding in 
`SpillManager::read_spill_as_stream` (#16616)
     add 1a575a0835 feat(spark): implement Spark string function like/ilike 
(#16962)
     add a078cd257d Fix window_functions docs formatting (#17005)
     add c0bdff912a Fix 'Analaysis' typo (#17015)
     add f4c5a63c6b Fix random extra bullet for 'Analytical Functions' (#17014)
     add c37dd5ea45 feat: Cache Parquet metadata in built in parquet reader 
(#16971)
     add b4e7147c85 fix: `ComposedPhysicalExtensionCodec` does not use the same 
codec as encoding when decoding (#16986)
     add 6d9b76e4a3 Perf: Port arrow-rs optimization for get_buffer_memory_size 
and add fast path for no buffer for gc string view (#17008)
     add 66d6995b8f Fix failing documentation check (#17026)
     add 2968331e4c #16994 Ensure CooperativeExec#maintains_input_order returns 
a Vec of the correct size (#16995)
     add fa1f8c192d Upgrade arrow/parquet to 56.0.0 (#16690)
     add 36f5f1456d test: Add logic tests for string_agg with order (#17033)
     add eb2b8c07b2 fix error result in execute&pre_selection (#16930)
     add cc78edc51e docs: Fix failing CI (#17041)
     add 4c36226bc4 Docs: Add Examples to Config Options page (#17039)
     add f10deb67a3 Add Tuning Guide for small data / short queries (#17040)
     add 40015a8345 Docs: Update the crate configuration / build settings page 
(#17038)
     add 6d0073465a Implement `From<Option<String>>' for `ScalarValue` (#17043)
     add e4f16dd60f feat: Add `Arc<ConfigOptions>` to `ScalarFunctionArgs`, 
don't copy `ConfigOptions` on each query (#16970)
     add 5f26e70f12 chore(deps): bump tokio-util from 0.7.15 to 0.7.16 (#17030)
     add bf6f6316ae Add missing Substrait to DataFusion function name mappings 
(#16950)
     add 71b92bc9e7 refactor: use upstream inline_key_fast (#17044)
     add b0c8dd61ac Make `AsyncScalarUDFImpl::invoke_async_with_args` 
consistent with `ScalarUDFImpl::invoke_with_args` (#16902)
     add 3472aa1349  Implement spark `array` function `array` (#16936)
     add 6043be448f feat: spark crc32/sha1 (#17032)
     add 79c4c057e6 Address memory over-accounting in array_agg (#16816)
     add 183ff6643a Support `centroids` config for 
`approx_percentile_cont_with_weight` (#17003)
     add 2bbd6a14e0 chore(deps): bump aws-credential-types from 1.2.4 to 1.2.5 
(#17053)
     add 8147565bf1 Support Substrait functions and_not, xor, and between in 
consumer built-in expression builder (#16984)
     add 84bbce63af Derive UDWF equality from PartialEq, Hash (#17057)
     add a9e6d4be4a feat: Limit the memory used in the file metadata cache 
(#17031)
     add d7a886cef0 fix return field for `is_null` and `is_not_null` expression 
(#17056)
     add 20bb7e6901 chore(deps): bump tokio from 1.47.0 to 1.47.1 (#17063)
     add df153c2f81 Optimize char expression (#16076)
     add 60ac1cc5f9 fix: Remove `datafusion.execution.parquet.cache_metadata` 
config (#17062)
     add a83237f3a9 Fix equality of parametrizable ArrayAgg function (#17065)
     add 7bc9906513 Implement Spark `url` function `parse_url` (#16937)
     add f9efba0e2c Add ExecutionPlan::reset_state (#17028)
     add ac3a5735ff Derive UDAF equality from Eq, Hash (#17067)
     add 541a67d12c Remove elements deprecated since v 45 (#17075)
     add 060938bf68 Deprecate ScalarUDF::is_nullable (#17074)
     add f0630fb4f7 Re-export `object_store` crate via DataFusion Core and 
Common (#17070)
     add 173989cc2f Docs: Add Tuning Guide for larger-than-memory queries 
(#17069)
     add 407a965d37 Link UdfEq and PtrEq to help understand relationship. 
(#17082)
     add cbc0614209 feat: Dynamic Parquet encryption and decryption properties 
(#16779)
     add 5f95734e1e Fix hash/equality issues for ScalarFunctionExpr  (#17078)
     add 9264bb88ab Fill missing methods in aliased UDF impls (#17080)
     add d69359457e Improve Hash speed for ScalarFunctionExpr (#17099)
     add ab794d29b3 chore(deps): bump clap from 4.5.42 to 4.5.43 (#17079)
     add 6793af5829 minor: remove unused import in docstring of 
datafusion_common::record_batch (#17106)
     add 999b44ba6f Make macros in common::test_util hygenic (#17102)
     add d987d2dc80 minor: remove unnecessary clippy:large_enum_variant allows 
(#17108)
     add 3d6541d119 minor: Improve equivalence handling of joins (#16893)
     add 9463cf6792 Fix incorrect `NULL IN ()` optimization (#17092)
     add 876b504cb0 Simplify comparisons and binary operations involving NULL 
(#17088)
     add c7d5904f01 Add `prettier` to the devcontainer (GitHub codespaces) 
(#17019)
     add c4f0375686 Set a lower threshold for clippy to flag large error 
variants (#17109)
     add ff9db020d7 chore(deps): bump rustyline from 16.0.0 to 17.0.0 (#17116)
     add 14fb4a3c7d feat: Use Cached Metadata for ListingTable Statistics 
(#17022)
     add ff77b70200 Add dynamic filter (bounds) pushdown to HashJoinExec 
(#16445)
     add d375bfed45 Remove the "extended workflow" github action (#17119)
     add f0e9334848 feat(spark): implement Spark math function mod/pmod (#16829)
     add c5cb6f4ad7 feat(spark): implement Spark math function 
bit_get/bit_count (#16942)
     add ceab1e1653 feat: add `isodow` (ISO day-of-week) support to date_part 
(Monday = 0) (#17112)
     add 28e042dd47 feat(spark): implement spark datetime function  
date_add/date_sub (#17024)
     add 8494a3967a Derive `WindowUDFImpl` equality, hash from `Eq`, `Hash` 
traits (#17081)
     add 80d105840d chore(deps): bump sysinfo from 0.36.1 to 0.37.0 (#17124)
     add a1431e2371 chore(deps): bump libc from 0.2.174 to 0.2.175 (#17121)
     add 7d52145127 Preserve equivalence properties during projection pushdown 
(#17129)
     add 9d9cde499b chore: Enforce checks for RC branches (#17132)
     add 0db14c8dd3 chore(deps): bump actions/checkout from 4.2.2 to 5.0.0 
(#17149)
     add 00c2191bc2 fix: Add missing member to visitor for 
ConfigFileEncryptionProperties (#17103)
     add 44daa9a7b8 minor: enhance comment in SortPreservingMergeStream.abort 
(#17115)
     add 31016f2233 Merge branch 'main' into 
dependabot/npm_and_yarn/datafusion/wasmtest/datafusion-wasm-app/multi-96c788614a

No new revisions were added by this update.

Summary of changes:
 .asf.yaml                                          |  69 ++
 .devcontainer/Dockerfile                           |   8 +-
 .github/workflows/audit.yml                        |   2 +-
 .github/workflows/dependencies.yml                 |   2 +-
 .github/workflows/dev.yml                          |   8 +-
 .github/workflows/docs.yaml                        |   6 +-
 .github/workflows/docs_pr.yaml                     |   4 +-
 .github/workflows/extended.yml                     |  52 +-
 .github/workflows/labeler.yml                      |   4 +-
 .github/workflows/large_files.yml                  |   2 +-
 .github/workflows/pr_comment_commands.yml          |  89 --
 .github/workflows/rust.yml                         |  60 +-
 .github/workflows/stale.yml                        |   2 +-
 Cargo.lock                                         | 990 ++++++++++++---------
 Cargo.toml                                         |  91 +-
 README.md                                          |   2 -
 benchmarks/Cargo.toml                              |   5 +-
 benchmarks/README.md                               |  61 ++
 benchmarks/src/bin/mem_profile.rs                  | 360 ++++++++
 benchmarks/src/clickbench.rs                       |  10 +-
 benchmarks/src/h2o.rs                              |  19 +-
 benchmarks/src/imdb/mod.rs                         |   3 +
 benchmarks/src/imdb/run.rs                         |  15 +-
 benchmarks/src/sort_tpch.rs                        |  16 +-
 benchmarks/src/tpch/mod.rs                         |   3 +
 benchmarks/src/tpch/run.rs                         |  15 +-
 benchmarks/src/util/memory.rs                      |  57 ++
 benchmarks/src/util/mod.rs                         |   2 +
 clippy.toml                                        |  12 +-
 datafusion-cli/Cargo.toml                          |   8 +-
 datafusion-cli/src/print_format.rs                 | 310 +++----
 datafusion-examples/Cargo.toml                     |   4 +-
 datafusion-examples/README.md                      |   2 +
 datafusion-examples/examples/advanced_udwf.rs      |   5 +-
 datafusion-examples/examples/async_udf.rs          | 306 +++----
 .../examples/composed_extension_codec.rs           |  76 +-
 .../examples/parquet_encrypted_with_kms.rs         | 301 +++++++
 datafusion-examples/examples/sql_frontend.rs       |   2 +-
 datafusion/catalog/src/streaming.rs                |  34 +-
 datafusion/common-runtime/Cargo.toml               |   2 +-
 datafusion/common-runtime/src/common.rs            |  21 +-
 datafusion/common/Cargo.toml                       |   4 +-
 datafusion/common/src/config.rs                    | 198 ++++-
 datafusion/common/src/encryption.rs                |  29 +-
 .../common/src/file_options/parquet_writer.rs      |  34 +-
 datafusion/common/src/rounding.rs                  |  40 +-
 datafusion/common/src/scalar/mod.rs                | 982 +++++++++++++++++++-
 datafusion/common/src/test_util.rs                 |  34 +-
 datafusion/common/src/types/native.rs              |   5 +-
 datafusion/common/src/utils/mod.rs                 | 116 ---
 datafusion/core/Cargo.toml                         |   3 +-
 .../core/src/datasource/file_format/parquet.rs     | 287 ++++--
 datafusion/core/src/execution/context/mod.rs       |  34 +-
 datafusion/core/src/execution/session_state.rs     |  33 +-
 datafusion/core/src/lib.rs                         |  11 +-
 datafusion/core/src/physical_planner.rs            |   5 +
 datafusion/core/src/test/object_store.rs           |  24 +-
 datafusion/core/tests/core_integration.rs          |   3 +
 datafusion/core/tests/execution/coop.rs            |  83 +-
 datafusion/core/tests/fuzz_cases/aggregate_fuzz.rs |  23 +-
 .../core/tests/fuzz_cases/equivalence/ordering.rs  |   2 +
 .../tests/fuzz_cases/equivalence/projection.rs     |   3 +
 .../tests/fuzz_cases/equivalence/properties.rs     |   2 +
 datafusion/core/tests/fuzz_cases/mod.rs            |   2 +
 datafusion/core/tests/fuzz_cases/once_exec.rs      | 115 +++
 datafusion/core/tests/fuzz_cases/pruning.rs        |  11 +-
 .../spilling_fuzz_in_memory_constrained_env.rs     | 654 ++++++++++++++
 datafusion/core/tests/fuzz_cases/window_fuzz.rs    |   3 +
 .../schema_adapter_integration_tests.rs            | 509 -----------
 datafusion/core/tests/memory_limit/mod.rs          |  10 +-
 datafusion/core/tests/optimizer/mod.rs             |   2 +-
 datafusion/core/tests/parquet/custom_reader.rs     |   7 +-
 datafusion/core/tests/parquet/encryption.rs        | 254 +++++-
 datafusion/core/tests/parquet/file_statistics.rs   |   3 +-
 datafusion/core/tests/parquet/mod.rs               |   5 +-
 datafusion/core/tests/parquet/page_pruning.rs      |   4 +-
 datafusion/core/tests/parquet/row_group_pruning.rs |  14 +-
 datafusion/core/tests/parquet/schema_adapter.rs    |   3 +-
 .../tests/physical_optimizer/enforce_sorting.rs    | 138 ++-
 .../physical_optimizer/filter_pushdown/mod.rs      | 665 +++++++++++++-
 .../physical_optimizer/filter_pushdown/util.rs     |   5 +-
 .../tests/physical_optimizer/join_selection.rs     |   7 +-
 .../physical_optimizer/partition_statistics.rs     |  30 +
 .../physical_optimizer/projection_pushdown.rs      |   5 +
 .../core/tests/physical_optimizer/test_utils.rs    |   1 +
 .../src/test => core/tests/schema_adapter}/mod.rs  |   2 +-
 .../schema_adapter_integration_tests.rs            | 363 ++++++++
 datafusion/core/tests/sql/runtime_config.rs        |  81 ++
 .../tests/user_defined/user_defined_aggregates.rs  |  74 +-
 .../user_defined/user_defined_scalar_functions.rs  | 229 ++---
 .../user_defined/user_defined_window_functions.rs  |  90 +-
 .../datasource-avro/src/avro_to_arrow/schema.rs    |   2 +
 datafusion/datasource-parquet/Cargo.toml           |   1 +
 datafusion/datasource-parquet/src/file_format.rs   | 266 +++++-
 datafusion/datasource-parquet/src/mod.rs           |   2 +-
 datafusion/datasource-parquet/src/opener.rs        |  56 +-
 datafusion/datasource-parquet/src/reader.rs        | 151 +++-
 datafusion/datasource-parquet/src/source.rs        |  56 +-
 datafusion/datasource/Cargo.toml                   |   2 +-
 datafusion/datasource/src/file_scan_config.rs      | 149 +---
 datafusion/datasource/src/source.rs                |  39 +-
 datafusion/doc/src/lib.rs                          |  13 +-
 datafusion/execution/Cargo.toml                    |   6 +
 datafusion/execution/src/cache/cache_manager.rs    | 105 ++-
 datafusion/execution/src/cache/cache_unit.rs       | 435 ++++++++-
 datafusion/execution/src/cache/lru_queue.rs        | 537 +++++++++++
 datafusion/execution/src/cache/mod.rs              |   1 +
 datafusion/execution/src/config.rs                 |  72 +-
 datafusion/execution/src/lib.rs                    |   2 +
 datafusion/execution/src/parquet_encryption.rs     |  81 ++
 datafusion/execution/src/runtime_env.rs            | 109 ++-
 datafusion/expr-common/src/dyn_eq.rs               |  64 ++
 datafusion/expr-common/src/interval_arithmetic.rs  | 225 +++++
 datafusion/expr-common/src/lib.rs                  |   1 +
 datafusion/expr-common/src/operator.rs             |  63 +-
 datafusion/expr/src/async_udf.rs                   |  49 +-
 datafusion/expr/src/execution_props.rs             |  21 +-
 datafusion/expr/src/expr.rs                        |  37 +-
 datafusion/expr/src/expr_fn.rs                     | 128 +--
 datafusion/expr/src/lib.rs                         |   2 +
 datafusion/expr/src/planner.rs                     |   2 +-
 datafusion/expr/src/ptr_eq.rs                      | 135 +++
 datafusion/expr/src/simplify.rs                    |   1 -
 datafusion/expr/src/tree_node.rs                   |  12 +
 datafusion/expr/src/udaf.rs                        | 130 ++-
 datafusion/expr/src/udf.rs                         |  50 +-
 datafusion/expr/src/udf_eq.rs                      | 194 ++++
 datafusion/expr/src/udwf.rs                        |  99 +--
 datafusion/expr/src/utils.rs                       | 176 +++-
 datafusion/expr/src/window_state.rs                |  10 +-
 datafusion/ffi/src/session_config.rs               |  20 +-
 datafusion/ffi/src/udaf/accumulator_args.rs        |   1 +
 datafusion/ffi/src/udaf/mod.rs                     |  51 +-
 datafusion/ffi/src/udf/mod.rs                      |  72 +-
 datafusion/ffi/src/udwf/mod.rs                     |  48 +-
 datafusion/functions-aggregate-common/src/order.rs |  15 +-
 datafusion/functions-aggregate-common/src/utils.rs |  61 +-
 .../src/approx_percentile_cont.rs                  |  22 +-
 .../src/approx_percentile_cont_with_weight.rs      | 139 +--
 datafusion/functions-aggregate/src/array_agg.rs    | 102 ++-
 .../functions-aggregate/src/bit_and_or_xor.rs      |  40 +-
 datafusion/functions-aggregate/src/count.rs        | 163 +++-
 datafusion/functions-aggregate/src/first_last.rs   |  56 +-
 datafusion/functions-aggregate/src/regr.rs         | 238 ++++-
 datafusion/functions-aggregate/src/stddev.rs       |  24 +-
 datafusion/functions-aggregate/src/string_agg.rs   |  30 +-
 datafusion/functions-aggregate/src/sum.rs          | 127 ++-
 datafusion/functions-nested/benches/map.rs         |  12 +-
 datafusion/functions-window/src/cume_dist.rs       |  17 +-
 datafusion/functions-window/src/lead_lag.rs        |  49 +-
 datafusion/functions-window/src/macros.rs          |  14 +-
 datafusion/functions-window/src/nth_value.rs       |  56 +-
 datafusion/functions-window/src/ntile.rs           |  20 +-
 datafusion/functions-window/src/planner.rs         |  15 +-
 datafusion/functions-window/src/rank.rs            |  77 +-
 datafusion/functions-window/src/row_number.rs      |  20 +-
 datafusion/functions/benches/ascii.rs              |   6 +
 datafusion/functions/benches/character_length.rs   |   6 +
 datafusion/functions/benches/chr.rs                |   3 +
 datafusion/functions/benches/concat.rs             |   3 +
 datafusion/functions/benches/cot.rs                |   4 +
 datafusion/functions/benches/date_bin.rs           |   9 +-
 datafusion/functions/benches/date_trunc.rs         |   9 +-
 datafusion/functions/benches/encoding.rs           |   7 +
 datafusion/functions/benches/find_in_set.rs        |   7 +
 datafusion/functions/benches/gcd.rs                |   5 +
 datafusion/functions/benches/initcap.rs            |   5 +
 datafusion/functions/benches/isnan.rs              |   4 +
 datafusion/functions/benches/iszero.rs             |   4 +
 datafusion/functions/benches/lower.rs              |   9 +
 datafusion/functions/benches/ltrim.rs              |   4 +
 datafusion/functions/benches/make_date.rs          |  16 +-
 datafusion/functions/benches/nullif.rs             |   3 +
 datafusion/functions/benches/pad.rs                |   3 +
 datafusion/functions/benches/random.rs             |   6 +-
 datafusion/functions/benches/regx.rs               |   2 +
 datafusion/functions/benches/repeat.rs             |   3 +
 datafusion/functions/benches/reverse.rs            |   7 +
 datafusion/functions/benches/signum.rs             |   4 +
 datafusion/functions/benches/strpos.rs             |   7 +
 datafusion/functions/benches/substr.rs             |   3 +
 datafusion/functions/benches/substr_index.rs       |   8 +-
 datafusion/functions/benches/to_char.rs            |  13 +-
 datafusion/functions/benches/to_hex.rs             |   5 +
 datafusion/functions/benches/to_timestamp.rs       |  10 +-
 datafusion/functions/benches/trunc.rs              |   5 +
 datafusion/functions/benches/upper.rs              |   4 +
 datafusion/functions/benches/uuid.rs               |   5 +
 datafusion/functions/src/core/union_extract.rs     |   6 +-
 datafusion/functions/src/core/union_tag.rs         |   3 +
 datafusion/functions/src/core/version.rs           |   3 +
 datafusion/functions/src/datetime/date_bin.rs      |   2 +
 datafusion/functions/src/datetime/date_part.rs     |   4 +-
 datafusion/functions/src/datetime/date_trunc.rs    |  91 +-
 datafusion/functions/src/datetime/from_unixtime.rs |   3 +
 datafusion/functions/src/datetime/make_date.rs     |   2 +
 datafusion/functions/src/datetime/to_char.rs       |   7 +
 datafusion/functions/src/datetime/to_date.rs       |   5 +-
 datafusion/functions/src/datetime/to_local_time.rs |   3 +
 datafusion/functions/src/datetime/to_timestamp.rs  |   3 +
 datafusion/functions/src/math/log.rs               |  11 +
 datafusion/functions/src/math/power.rs             |   6 +-
 datafusion/functions/src/math/signum.rs            |   3 +
 datafusion/functions/src/regex/regexpcount.rs      |   2 +
 datafusion/functions/src/regex/regexpinstr.rs      |   2 +
 datafusion/functions/src/string/chr.rs             | 122 +++
 datafusion/functions/src/string/concat.rs          |   2 +
 datafusion/functions/src/string/concat_ws.rs       |   3 +
 datafusion/functions/src/string/contains.rs        |   2 +
 datafusion/functions/src/string/lower.rs           |   2 +
 datafusion/functions/src/string/upper.rs           |   2 +
 datafusion/functions/src/strings.rs                |  39 +-
 datafusion/functions/src/unicode/find_in_set.rs    |   2 +
 datafusion/functions/src/unicode/initcap.rs        |  24 +-
 datafusion/functions/src/utils.rs                  |  31 +-
 datafusion/optimizer/src/analyzer/mod.rs           |   8 -
 datafusion/optimizer/src/analyzer/type_coercion.rs |  29 +-
 datafusion/optimizer/src/optimizer.rs              |  18 +-
 datafusion/optimizer/src/push_down_filter.rs       |  30 +-
 .../src/simplify_expressions/expr_simplifier.rs    | 329 +++----
 .../src/simplify_expressions/simplify_exprs.rs     |   1 +
 .../src/simplify_expressions/unwrap_cast.rs        |  14 +-
 .../optimizer/src/simplify_expressions/utils.rs    |  88 ++
 .../optimizer/tests/optimizer_integration.rs       |   2 +-
 .../physical-expr-common/src/physical_expr.rs      |  67 +-
 datafusion/physical-expr/src/aggregate.rs          |  43 +-
 .../physical-expr/src/async_scalar_function.rs     |  36 +-
 .../physical-expr/src/equivalence/ordering.rs      |   4 +
 .../physical-expr/src/equivalence/projection.rs    |   2 +
 .../src/equivalence/properties/dependency.rs       |   3 +
 .../src/equivalence/properties/joins.rs            |   8 +-
 datafusion/physical-expr/src/expressions/binary.rs | 147 ++-
 .../src/expressions/dynamic_filters.rs             |  10 +-
 .../physical-expr/src/expressions/is_not_null.rs   |   5 -
 .../physical-expr/src/expressions/is_null.rs       |   5 -
 .../physical-expr/src/expressions/literal.rs       |   2 +-
 datafusion/physical-expr/src/planner.rs            |   6 +
 datafusion/physical-expr/src/scalar_function.rs    |  60 +-
 datafusion/physical-expr/src/utils/guarantee.rs    | 339 ++++++-
 datafusion/physical-expr/src/window/aggregate.rs   |   6 +-
 datafusion/physical-expr/src/window/mod.rs         |   6 -
 .../physical-expr/src/window/sliding_aggregate.rs  |   6 +-
 datafusion/physical-expr/src/window/standard.rs    |   4 +
 datafusion/physical-expr/src/window/window_expr.rs |   6 +
 .../physical-optimizer/src/enforce_distribution.rs |  22 +-
 .../physical-optimizer/src/filter_pushdown.rs      | 358 +++++++-
 .../physical-optimizer/src/join_selection.rs       |  52 +-
 .../physical-optimizer/src/output_requirements.rs  |  45 +-
 datafusion/physical-plan/Cargo.toml                |   1 +
 .../group_values/single_group_by/bytes.rs          |  13 +-
 datafusion/physical-plan/src/aggregates/mod.rs     | 148 +--
 .../physical-plan/src/aggregates/row_hash.rs       |  32 +-
 .../src/aggregates/topk/hash_table.rs              |  34 +-
 datafusion/physical-plan/src/async_func.rs         |   9 +-
 datafusion/physical-plan/src/coalesce/mod.rs       |  12 +-
 datafusion/physical-plan/src/common.rs             |   2 +-
 datafusion/physical-plan/src/coop.rs               |  22 +-
 datafusion/physical-plan/src/execution_plan.rs     |  87 +-
 datafusion/physical-plan/src/filter_pushdown.rs    |  35 +-
 datafusion/physical-plan/src/joins/cross_join.rs   |  12 +
 datafusion/physical-plan/src/joins/hash_join.rs    | 209 ++++-
 datafusion/physical-plan/src/joins/test_utils.rs   |  25 +
 datafusion/physical-plan/src/joins/utils.rs        |   4 +-
 datafusion/physical-plan/src/lib.rs                |   1 -
 datafusion/physical-plan/src/metrics/value.rs      | 118 +++
 datafusion/physical-plan/src/placeholder_row.rs    |  14 +-
 datafusion/physical-plan/src/recursive_query.rs    |   5 +-
 datafusion/physical-plan/src/sorts/cursor.rs       | 214 +----
 datafusion/physical-plan/src/sorts/merge.rs        |  15 +-
 datafusion/physical-plan/src/sorts/mod.rs          |   1 +
 .../physical-plan/src/sorts/multi_level_merge.rs   | 449 ++++++++++
 datafusion/physical-plan/src/sorts/partial_sort.rs | 159 +++-
 datafusion/physical-plan/src/sorts/sort.rs         | 134 ++-
 .../physical-plan/src/sorts/streaming_merge.rs     |  92 +-
 datafusion/physical-plan/src/spill/mod.rs          |  19 +-
 .../physical-plan/src/spill/spill_manager.rs       |  70 +-
 datafusion/physical-plan/src/test.rs               |   2 +-
 datafusion/physical-plan/src/union.rs              |   7 +-
 datafusion/physical-plan/src/values.rs             | 330 -------
 .../src/windows/bounded_window_agg_exec.rs         |   1 +
 datafusion/physical-plan/src/windows/mod.rs        |  42 +-
 datafusion/physical-plan/src/work_table.rs         |   8 -
 .../proto-common/proto/datafusion_common.proto     |  42 +-
 datafusion/proto-common/src/from_proto/mod.rs      |  31 +-
 datafusion/proto-common/src/generated/pbjson.rs    | 799 ++++++++++++++---
 datafusion/proto-common/src/generated/prost.rs     |  68 +-
 datafusion/proto-common/src/to_proto/mod.rs        |  18 +-
 datafusion/proto/Cargo.toml                        |   1 +
 datafusion/proto/proto/datafusion.proto            |   3 +
 .../proto/src/generated/datafusion_proto_common.rs |  68 +-
 datafusion/proto/src/generated/pbjson.rs           |  49 +
 datafusion/proto/src/generated/prost.rs            |  11 +-
 datafusion/proto/src/lib.rs                        |   5 +-
 datafusion/proto/src/logical_plan/file_formats.rs  |  14 -
 datafusion/proto/src/logical_plan/mod.rs           |  17 +-
 datafusion/proto/src/logical_plan/to_proto.rs      |   1 +
 datafusion/proto/src/physical_plan/from_proto.rs   | 106 +--
 datafusion/proto/src/physical_plan/mod.rs          | 508 ++++++-----
 datafusion/proto/src/physical_plan/to_proto.rs     |   6 +
 datafusion/proto/tests/cases/mod.rs                |  70 +-
 .../proto/tests/cases/roundtrip_logical_plan.rs    |  29 +-
 .../proto/tests/cases/roundtrip_physical_plan.rs   |  82 +-
 .../tests/testdata/test.arrow}                     | Bin
 datafusion/spark/Cargo.toml                        |   5 +
 datafusion/spark/benches/char.rs                   |   3 +
 datafusion/spark/src/function/array/mod.rs         |  13 +-
 .../src/function/array/spark_array.rs}             | 195 ++--
 datafusion/spark/src/function/bitwise/bit_count.rs | 319 +++++++
 datafusion/spark/src/function/bitwise/bit_get.rs   | 287 ++++++
 datafusion/spark/src/function/bitwise/mod.rs       |  20 +-
 datafusion/spark/src/function/datetime/date_add.rs | 129 +++
 datafusion/spark/src/function/datetime/date_sub.rs | 123 +++
 datafusion/spark/src/function/datetime/last_day.rs | 125 +++
 datafusion/spark/src/function/datetime/mod.rs      |  40 +-
 datafusion/spark/src/function/datetime/next_day.rs | 226 +++++
 .../spark/src/function/functions_nested_utils.rs   |  53 ++
 datafusion/spark/src/function/hash/crc32.rs        | 134 +++
 datafusion/spark/src/function/hash/mod.rs          |  12 +-
 datafusion/spark/src/function/hash/sha1.rs         | 145 +++
 datafusion/spark/src/function/math/hex.rs          |  13 +
 datafusion/spark/src/function/math/mod.rs          |  10 +-
 datafusion/spark/src/function/math/modulus.rs      | 617 +++++++++++++
 datafusion/spark/src/function/math/rint.rs         | 165 ++++
 datafusion/spark/src/function/mod.rs               |   1 +
 datafusion/spark/src/function/string/char.rs       |  58 +-
 datafusion/spark/src/function/string/ilike.rs      | 173 ++++
 datafusion/spark/src/function/string/like.rs       | 178 ++++
 datafusion/spark/src/function/string/luhn_check.rs | 153 ++++
 datafusion/spark/src/function/string/mod.rs        |  25 +-
 datafusion/spark/src/function/url/mod.rs           |  13 +-
 datafusion/spark/src/function/url/parse_url.rs     | 301 +++++++
 datafusion/spark/src/function/utils.rs             |  17 +-
 datafusion/sql/src/expr/function.rs                |  12 +
 datafusion/sql/src/expr/order_by.rs                |  16 +-
 datafusion/sql/src/parser.rs                       | 115 ++-
 datafusion/sql/src/planner.rs                      |  62 ++
 datafusion/sql/src/statement.rs                    |   4 +-
 datafusion/sql/src/unparser/dialect.rs             |  11 -
 datafusion/sql/src/unparser/expr.rs                |  19 +-
 datafusion/sql/tests/sql_integration.rs            |  43 +-
 datafusion/sqllogictest/Cargo.toml                 |   4 +-
 datafusion/sqllogictest/data/1.parquet             | Bin 0 -> 1258 bytes
 datafusion/sqllogictest/data/2.parquet             | Bin 0 -> 1273 bytes
 .../src/engines/datafusion_engine/error.rs         |   2 +-
 datafusion/sqllogictest/test_files/aggregate.slt   | 138 +++
 datafusion/sqllogictest/test_files/copy.slt        |   1 -
 datafusion/sqllogictest/test_files/cte.slt         |  55 ++
 datafusion/sqllogictest/test_files/errors.slt      |   3 +-
 datafusion/sqllogictest/test_files/expr.slt        |  23 +
 .../sqllogictest/test_files/expr/date_part.slt     |  20 +
 datafusion/sqllogictest/test_files/group_by.slt    |   6 +-
 .../sqllogictest/test_files/information_schema.slt |   8 +-
 datafusion/sqllogictest/test_files/join.slt.part   |  18 +-
 datafusion/sqllogictest/test_files/joins.slt       |  81 +-
 .../test_files/listing_table_statistics.slt        |   2 +-
 datafusion/sqllogictest/test_files/order.slt       |  92 ++
 datafusion/sqllogictest/test_files/parquet.slt     | 112 +++
 .../test_files/parquet_filter_pushdown.slt         |  47 +
 .../sqllogictest/test_files/parquet_statistics.slt |  16 +-
 datafusion/sqllogictest/test_files/predicates.slt  |  67 ++
 .../sqllogictest/test_files/push_down_filter.slt   |  21 +-
 .../sqllogictest/test_files/repartition_scan.slt   |   8 +-
 .../sqllogictest/test_files/spark/array/array.slt  |  65 +-
 .../test_files/spark/bitwise/bit_count.slt         | 204 ++++-
 .../test_files/spark/bitwise/bit_get.slt           |  51 +-
 .../test_files/spark/bitwise/getbit.slt            |  52 +-
 .../test_files/spark/datetime/date_add.slt         |  45 +-
 .../test_files/spark/datetime/date_sub.slt         |  50 +-
 .../test_files/spark/datetime/dateadd.slt          |  36 +-
 .../test_files/spark/datetime/last_day.slt         |  99 ++-
 .../test_files/spark/datetime/next_day.slt         |  62 +-
 .../sqllogictest/test_files/spark/hash/crc32.slt   |  53 +-
 .../sqllogictest/test_files/spark/hash/sha.slt     |  48 +-
 .../sqllogictest/test_files/spark/hash/sha1.slt    |  48 +-
 .../sqllogictest/test_files/spark/math/hex.slt     |  10 +
 .../sqllogictest/test_files/spark/math/mod.slt     | 221 ++++-
 .../sqllogictest/test_files/spark/math/pmod.slt    | 320 ++++++-
 .../sqllogictest/test_files/spark/math/rint.slt    |  94 +-
 .../test_files/spark/predicate/ilike.slt           |  51 +-
 .../test_files/spark/predicate/like.slt            |  61 +-
 .../test_files/spark/string/luhn_check.slt         | 162 +++-
 .../test_files/spark/url/parse_url.slt             |  80 +-
 datafusion/sqllogictest/test_files/window.slt      | 144 +++
 datafusion/substrait/src/extensions.rs             |   2 +
 .../logical_plan/consumer/expr/scalar_function.rs  | 195 +++-
 .../logical_plan/consumer/expr/window_function.rs  |   1 +
 .../src/logical_plan/consumer/rel/read_rel.rs      |  30 +-
 .../substrait/src/logical_plan/consumer/utils.rs   |   2 +
 .../logical_plan/producer/expr/scalar_function.rs  |  21 +
 .../logical_plan/producer/expr/window_function.rs  |   1 +
 .../tests/cases/builtin_expr_semantics_tests.rs    | 124 +++
 .../substrait/tests/cases/consumer_integration.rs  |  83 ++
 datafusion/substrait/tests/cases/mod.rs            |   1 +
 .../tests/cases/roundtrip_logical_plan.rs          |  37 +-
 .../test_plans/scalar_fn_logb_expr.substrait.json  | 116 +++
 .../scalar_fn_to_between_expr.substrait.json       | 143 +++
 ..._to_built_in_binary_expr_and_not.substrait.json | 132 +++
 ...r_fn_to_built_in_binary_expr_xor.substrait.json | 132 +++
 .../virtual_table_with_expressions.substrait.json  |  75 ++
 dev/changelog/49.0.0.md                            | 387 ++++++++
 dev/release/README.md                              |  14 +-
 dev/update_config_docs.sh                          | 103 ++-
 docs/source/contributor-guide/testing.md           |  18 +-
 docs/source/index.rst                              |   2 -
 .../library-user-guide/functions/adding-udfs.md    |  74 +-
 docs/source/library-user-guide/query-optimizer.md  |   2 +-
 docs/source/library-user-guide/upgrading.md        | 173 +++-
 docs/source/user-guide/configs.md                  | 115 ++-
 docs/source/user-guide/crate-configuration.md      |  78 +-
 docs/source/user-guide/expressions.md              |  42 +-
 docs/source/user-guide/sql/aggregate_functions.md  | 222 ++++-
 docs/source/user-guide/sql/scalar_functions.md     |   5 +-
 docs/source/user-guide/sql/special_functions.md    |  13 +-
 docs/source/user-guide/sql/window_functions.md     | 109 +--
 414 files changed, 22764 insertions(+), 6046 deletions(-)
 delete mode 100644 .github/workflows/pr_comment_commands.yml
 create mode 100644 benchmarks/src/bin/mem_profile.rs
 create mode 100644 benchmarks/src/util/memory.rs
 create mode 100644 datafusion-examples/examples/parquet_encrypted_with_kms.rs
 create mode 100644 datafusion/core/tests/fuzz_cases/once_exec.rs
 create mode 100644 
datafusion/core/tests/fuzz_cases/spilling_fuzz_in_memory_constrained_env.rs
 delete mode 100644 
datafusion/core/tests/integration_tests/schema_adapter_integration_tests.rs
 copy datafusion/{expr/src/test => core/tests/schema_adapter}/mod.rs (95%)
 create mode 100644 
datafusion/core/tests/schema_adapter/schema_adapter_integration_tests.rs
 create mode 100644 datafusion/execution/src/cache/lru_queue.rs
 create mode 100644 datafusion/execution/src/parquet_encryption.rs
 create mode 100644 datafusion/expr-common/src/dyn_eq.rs
 create mode 100644 datafusion/expr/src/ptr_eq.rs
 create mode 100644 datafusion/expr/src/udf_eq.rs
 create mode 100644 datafusion/physical-plan/src/sorts/multi_level_merge.rs
 delete mode 100644 datafusion/physical-plan/src/values.rs
 copy datafusion/{core/tests/data/example.arrow => 
proto/tests/testdata/test.arrow} (100%)
 copy datafusion/{functions-nested/src/make_array.rs => 
spark/src/function/array/spark_array.rs} (60%)
 create mode 100644 datafusion/spark/src/function/bitwise/bit_count.rs
 create mode 100644 datafusion/spark/src/function/bitwise/bit_get.rs
 create mode 100644 datafusion/spark/src/function/datetime/date_add.rs
 create mode 100644 datafusion/spark/src/function/datetime/date_sub.rs
 create mode 100644 datafusion/spark/src/function/datetime/last_day.rs
 create mode 100644 datafusion/spark/src/function/datetime/next_day.rs
 create mode 100644 datafusion/spark/src/function/functions_nested_utils.rs
 create mode 100644 datafusion/spark/src/function/hash/crc32.rs
 create mode 100644 datafusion/spark/src/function/hash/sha1.rs
 create mode 100644 datafusion/spark/src/function/math/modulus.rs
 create mode 100644 datafusion/spark/src/function/math/rint.rs
 create mode 100644 datafusion/spark/src/function/string/ilike.rs
 create mode 100644 datafusion/spark/src/function/string/like.rs
 create mode 100644 datafusion/spark/src/function/string/luhn_check.rs
 create mode 100644 datafusion/spark/src/function/url/parse_url.rs
 create mode 100644 datafusion/sqllogictest/data/1.parquet
 create mode 100644 datafusion/sqllogictest/data/2.parquet
 create mode 100644 
datafusion/substrait/tests/cases/builtin_expr_semantics_tests.rs
 create mode 100644 
datafusion/substrait/tests/testdata/test_plans/scalar_fn_logb_expr.substrait.json
 create mode 100644 
datafusion/substrait/tests/testdata/test_plans/scalar_fn_to_between_expr.substrait.json
 create mode 100644 
datafusion/substrait/tests/testdata/test_plans/scalar_fn_to_built_in_binary_expr_and_not.substrait.json
 create mode 100644 
datafusion/substrait/tests/testdata/test_plans/scalar_fn_to_built_in_binary_expr_xor.substrait.json
 create mode 100644 
datafusion/substrait/tests/testdata/test_plans/virtual_table_with_expressions.substrait.json
 create mode 100644 dev/changelog/49.0.0.md


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]


Reply via email to