You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@arrow.apache.org by dh...@apache.org on 2023/04/07 12:51:41 UTC
[arrow-datafusion] branch cleanup_sum_accumulator updated (38f6bb86bf -> b7c55a9570)
This is an automated email from the ASF dual-hosted git repository.
dheres pushed a change to branch cleanup_sum_accumulator
in repository https://gitbox.apache.org/repos/asf/arrow-datafusion.git
from 38f6bb86bf Cleanup sum accumulator
add b09c1eec46 Update README.md (#5190)
add 6eb0e36e7a Support ORDER BY an aliased column (#5067)
add a67ef9197a sqllogicaltest: use rowsort. (#5189)
add fbbb1b4692 Create disk manager spill folder if doesn't exist (#5185)
add 916ec5d506 minor: remove unnecessary `continue` (#5200)
add 0dfc66da38 Add unnest_column to DataFrame (#5106)
add 3f9b99663c Parse identifiers properly for TableReferences (#5183)
add a265509b27 Ambiguity check for where selection (#5153)
add 04b13672cf minor: extract `merge_schema()` function. (#5203)
add 48732b4cb2 Support arithmetic operation on DictionaryArray (#5194)
add 816a0f8ff5 FileStream: Open next file in parallel while decoding (#5161)
add f63b97246b fix(MemTable): make it cancel-safe and fix parallelism (#5197)
add d5077b55ef fix: make `write_csv/json/parquet` cancel-safe (#5196)
add de3deb3036 Add initial support for serializing physical plans with Substrait (#5176)
add 61459d9324 minor: remove unnecessary clone (#5207)
add e222bd627b bugfix: fix `TableScan` may contain fields not included in `schema` (#5188)
add f0c67193a3 bugfix: fix eval `nullalbe()` in `simplify_exprs` (#5208)
add b4cf60acb0 Replace placeholders in ScalarSubqueries (#5216)
add e166500733 bugfix: fix propagating empty_relation generates an illegal plan (#5219)
add dee9fd7d2b Make EnforceSorting global sort aware, fix sort mis-optimizations involving unions, support parallel sort + merge transformations (#5171)
add 1b03a7a35a Dataframe join_on method (#5210)
add a1b6f50723 Update README.md fix [welcoming community] link (#5232)
add 8a262c3ec0 fix: correct expected error in test (#5224)
add 0a5e8ae28d DataFusion 18.0.0 Release (#5240)
add f2ce2b9b02 bugfix: fix error when `get_coerced_window_frame` meet `utf8` (#5234)
add 8f3c8c3b43 fix clippy in nightly (#5238)
add eda875bfb5 Minor: Fix doc links and typos (#5225)
add 8bc035befc Update sqllogictest requirement from 0.11.1 to 0.12.0 #5237 (#5244)
add 8719041ff9 testcase for NDJsonExec with mixed order projection (#5243)
add ec9119d9d7 Disallow SORT BY in SQL (#5249)
add 4be56108d5 [BugFix] abort plan if order by column not in select list (#5132)
add f75d25fec2 Add negative test for SORT BY (#5254)
add 0c0ed1c456 [SQLLogicTest] Make schema validation ignore nullable and metadata attributes (#5246)
add 4eb1a57ffe Always wrapping OnceAsync for the inner table side in NestedLoopJoinExec (#5156)
add 0f95966cc2 refactor: correct the implementation of `all_schemas()` (#5236)
add 8a609dc207 Add SQL function overload LOG(base, x) for logarithm of x to base (#5245)
add 50f6e6940d Minor: port some explain test to sqllogictest, add filename normalization (#5252)
add fc211c37c6 [Enhancement] Don't repartition ProjectionExec when it does not compute anything (#5074)
add 00e60f1678 minor: replace `unwrap()` with `?` (#5262)
add 9710d7cdaf Minor: refactor ParquetExec roundtrip tests (#5260)
add 016ad8ee5a minor: Fix cargo fmt (#5263)
add 3da790214e enhance the checking of type errors in the test `window_frame_creation` (#5257)
add 95658877dc Feature/sort enforcement refactor (#5228)
add 98dba2b1d6 Minor: Begin porting some window tests to sqllogictests (#5199)
add c0defeb7a0 Use upstream newline_delimited_stream (#5267)
add 9a6b76e350 Minor: Add fetch to SortExec display (#5279)
add 253550c6c9 preserve scan projection order in push_down_projection (#5261)
add 07ae738b48 Add sqlplanner benchmarks (#5256)
add 322e92bea6 Add benchmark for SortExec (#5284)
add 2b73119bc5 feat: derive more traits for `ObjectStoreUrl` (#5288)
add d05647c65e Set `catalog_list` from outside for `SessionState`. (#5277)
add ec24724ea1 Support page skipping / page_index pushdown for evolved schemas (#5268)
add 90e03e4870 [fix][plan] relax the check for distinct, order by for dataframe (#5258)
add a10f3a0191 Rename master to main (#5280)
add bee4285d56 Feature/merge batches removal (#5300)
add ac2222a021 Serialize preserve_partitioning in SortExec (#5306)
add afb73bead3 Prevent optimizer from pruning UnnestExec. (#5282)
add fd75ba461d Make SQL query consistent with API syntax expression in code examples (#5303)
add dd8a2a79eb enable tpcds-64 (#5302)
add fed4019d55 fix: correct plan builder when test `scalar_subquery_project_expr` (#5304)
add f154a9aa38 Fix the potential bug of check_all_column_from_schema (#5287)
add 22b974fce9 [sqllogictest] Define output types and check them in tests (#5253)
add ded897ee7f fix: add yield point to `RepartitionExec` (#5299)
add 79ecf949a4 Linear search support for Window Group queries (#5286)
add 03890d40bc [DOC] Update math expression documentation (#5316)
add d6d9c6f2e0 chore: small typo in the example README (#5319)
add c5108aef4d Add missing protobuf serialisation functionality GetIndexedFieldExpr. (#5324)
add 5d5b1a0bd8 feat: add accessor to SessionContext fields for ContextProvider impl (#5318)
add 27b15fdcf3 Support non-tuple expression for exists-subquery to join (#5264)
add 6ec2544424 nicer error messages for cli, switch to display rather than debug (#5329)
add db4f9984eb Fix nested list indexing when the index is 0 or larger than the list size (#5311)
add ae89960bc9 minor: remove useless `.get()` (#5336)
add cfbb14d9c0 Allow `SessionContext::read_csv`, etc to read multiple files (#4908)
add 222205df2e datafusion.optimizer.repartition_file_scans enabled by default (#5295)
add e13c6537c5 Fix SortExec bench case and Add SortExec input cases to bench for SortPreservingMergeExec (#5308)
add c9d4eac3b8 Fix dependabot (#5341)
add e3679e2254 Update to arrow `33.0.0` (#5241)
add 2a5ef432ae minor: port intersection sql tests to sqllogictests (#5331)
add a85312351c feat: add rule to merge projection. (#5349)
add 554852ed6f Allow DISTINCT with ORDER BY and an aliased select list (#5307)
add f6e49ac7a0 bugfix: fix tpcds_logical_q8 ambiguous name. (#5335)
add b673a6187f minor: disable tpcds_logical_q10/q35 (#5333)
add a79f9c889c minor: fix rule name and comment. (#5370)
add 3882eea0f4 minor: port more window tests to sqllogictests (#5330)
add 3b8b94eaec minor: port limit tests to sqllogictests (#5355)
add 095f934845 generate new projection plan in inline_table_scan instead of discarding (#5371)
add 1309267e71 minor: disable tpcds-q41 due to not support decorrelate disjunction subquery. (#5369)
add ac33ebc8f0 Prepare for 19.0.0 release (#5381)
add cef119da9e fix: misc phys. expression display bugs (#5387)
add d6ef463744 Fixed small typos in files of the optimizer (#5356)
add 49237a21a7 Bug fix: Window frame range value outside the type range (#5384)
add 05d8a25278 minor: port predicates tests to sqllogictests (#5374)
add 9fd6efa51e minor: make table resolution an independent function ... (#5373)
add 32a238c501 Added tests for "like_for_type_coercion" and "test_type_coercion_rewrite" (#5389)
add 47bdda60b9 UDF zero params #5378 (#5380)
add d64076b46d docs: clarify spark (#5391)
add 722490121c Optimization of the function "intersect" (#5388)
add 1841736d95 refactor: parquet pruning simplifications (#5386)
add 4d4c5678e2 chore: add known project ZincObserve (#5376)
add a870e460d2 feat: rule ReplaceDistinctWithAggregate (#5354)
add 85ed38673d bugfix: fix master `bors` problem. (#5395)
add 248d6fc1b5 Minor: add tests for subquery to join (#5363)
add 645428f59b minor: support forgotten large_utf8 (#5393)
add 8b92b9b6c5 feat: add eliminate_unnecessary_projection rule (#5366)
add 0b77ec27c8 refactor `push_down_filter` to fix dead-loop and use optimizer_recurse. (#5337)
add 38185cacda enhance: remove more projection. (#5402)
add fad360df01 rebase (#5367)
add 69503ea0ff fix(docs): fix typos (#5403)
add cb09142c7e minor: port window tests to slt (part 2) (#5399)
add a7a824ad94 Add support for protobuf serialisation of Arrow Map type (#5359)
add 5ffa8d78f7 Add example of catalog API usage (#5291) (#5326)
add 8202a395a2 Support Zstd compressed files (#5397)
add 58cd1bf0b8 Move file format config.rs to live with the rest of the datasource code (#5406)
add 4118076093 Parquet limit pushdown (#5404) (#5416)
add 06fecacb34 Update arrow 34 (#5375)
add c676d1026f Also push down all filters in TableProvider (#5420)
add c477fc0ca9 Fix filter pushdown for extension plans (#5425)
add 20d08ab1fc Optimize count_distinct.size (#5377)
add ea3b965dd4 Memory reservation & metrics for cross join (#5339)
add 96aa2a677f add a describe method on DataFrame like Polars (#5226)
add d9669841c2 fix nested loop join with literal join filter (#5431)
add 25b4f673df Add (#5409)
add 0000d4fce3 reimplement `push_down_projection` and `prune_column`. (#4465)
add d076ab3b28 Bug/union wrong casting (#5342)
add eef0464411 add expr_fn::median (#5437)
add 793feda238 add mean result for describe method (#5435)
add c4b895822a Update README.md fix [DataFusion] links (#5438)
add 03fbf9feca refactor: ParquetExec logical expr. => phys. expr. (#5419)
add 3c1e4c0fd2 Support for Sliding Windows Joins with Symmetric Hash Join (SHJ) (#5322)
add f9f40bf70a minor: fix clippy in nightly. (#5440)
add 17b2f11b58 create new `datafusion-execution` crate, start splitting code out (#5432)
add a4b47d8c88 add a unit test that cover cast bug. (#5443)
add f68214dc65 Use compute_op_dyn_scalar for datatime (#5315)
add a95e0ec2fd minor: Port more window tests to sqlogictests (#5434)
add 49473d68be add std,median result to describe method (#5445)
add db4610e1d6 Upgrade bytes to 1.4 (#5460)
add ddd64e7edf build(deps): update zstd requirement from 0.11 to 0.12 (#5458)
add d11820aa25 refactor count_distinct to not to have update and merge (#5408)
add 1455b025ce Parquet sorting benchmark (#5433)
add be6efbc93f [feat]:fast check has column (#5328)
add 61fc51446c Implement/fix Eq and Hash for Expr and LogicalPlan (#5421)
add 8de7ea45e9 Fix is_distinct from for float NaN values (#5446)
add ac618f034f enable hash joins on FixedSizeBinary columns (#5461)
add e9852074ba feat: `extensions_options` macro (#5442)
add 132ae42f4a Fix decimal dyn scalar op (#5465)
add 8d195a8c0c refactor: make sum_distinct not to have update and merge (#5474)
add 53a638ef33 fix: build union schema with child has same column name but qualifier is different (#5452)
add c37ddf72ec feat: express unsigned literal in substrait (#5448)
add eb95413809 Comment out description fields in issue templates (#5482)
add c56b947651 feat: add name() method to UserDefinedLogicalNode (#5450)
add 978ec2dc80 refactor: make GeometricMean not to have update and merge (#5469)
add 21e33a3d10 Propagate timezone to created arrays (#5481)
add d0bd28eef3 feat: eliminate the duplicated sort keys in Order By clause (#5462)
add 99ef989312 Apply workaround for #5444 to DataFrame::describe (#5468)
add a6f4a7719e feat: Support bitwise operations for unsigned integer types (#5476)
add 8d8b765f46 Implement `Debug` for `ExecutionProps` and `VarProvider` (#5489)
add 928662bb12 chore: Remove references from SessionState from physical_plan (#5455)
add d7b221213c feat: add optimization rules for bitwise operations (#5423)
add 50e9d78da1 feat: `ParquetExec` predicate preservation (#5495)
add deeaa5632e Minor: Move TableProviderFactories up out of RuntimeEnv and into SessionState (#5477)
add 9e32de3440 Pass booleans by value instead of by reference (#5487)
add 89ca58326f feat: interval add timestamp (#5491)
add 0ead640e88 Minor: Improve docs for UserDefinedLogicalNode `dyn_eq` and `dyn_hash` (#5515)
add 8a1b133905 Allow setting config extensions for TaskContext (#5497)
add 84530a2f54 build(deps): update sqlparser requirement from 0.30 to 0.32 w/ API update (#5457)
add e46924d80f feat: add `arrow_cast` function to support supports arbitrary arrow types (#5166)
add ff013e2455 minor: improve error style (#5510)
add f5d23ff582 memory limited hash join (#5490)
add 8a1cb7e3ca fixed hash_join tests after passing boolean by value (#5531)
add 9878ee011b minor: fix clippy problem in new version. (#5532)
add 07b07d52fb Add dbbenchmark URL to db-benchmark readme (#5503)
add 55c7c4d8e9 Minor: Move `ObjectStoreRegistry` to datafusion_execution crate (#5478)
add 6a8c4a6011 fix: return schema of ExtensionPlan instead of its children's (#5514)
add 7f84503bb9 revert accidently deleted size code in count_distinct (#5533)
add 8c34ca4fa3 Add UserDefinedLogicalNodeCore (#5521)
add ac5676f74b Minor: add the concise way for matching numerics (#5537)
add f4f4d708ce Add necessary features to optimizer (#5540)
add 8b5c1c729d chore: deduplicate workspace fields in Cargo.toml (#5519)
add a768004082 Prepare for 20.0.0 release [Part 1] (#5539)
add 860918d17b Manual changelog for 20.0.0 (#5551)
add 9587339b0f Refactor DecorrelateWhereExists and add back Distinct if needs (#5345)
add aaa4e1496b Simplify simplify test cases, support `^`, `&`, `|`, `<<` and `>>` operators for building exprs (#5511)
add dd98aabdae minor: improve sqllogictest docs (#5553)
add c5ae3e80cd Remove unused dependencies found by cargo-machete (#5552)
add ecbc843a1a AggregateStatistics min/max/count take_optimizable replace col_expr name with casted_expr name (#5485)
add 5423ba0785 Avoid circular(ish) dependency parquet-test-utils on datafusion, try 2 (#5536)
add aeb593f719 Enforce ambiguity check whilst normalizing columns (#5509)
add 9261aa3f63 Generated changelog for 20.0.0 (#5563)
add 1a22f9fd43 fix: failed to execute sql with subquery (#5542)
add 9464bf2eb5 Revert describe count() workaround (#5556)
add 1f8ede5701 fix: cast literal to timestamp (#5517)
add 146a949218 feat: extract (epoch from col) (#5555)
add ce1572f910 Minor: improve docstrings for `ObjectStoreRegistry` and `ObjectStoreProvider` (#5577)
add 3df1cb37a5 Minor: Move RuntimeEnv to `datafusion_execution` (#5580)
add ff55effd3e INSERT INTO support for MemTable (#5520)
add 3b5a9af3b8 Minor: restore explicit match (#5579)
add 26eb406f9c refactor: add more error info when array is empty (#5560)
add 612eb1d0ce Memory limited nested-loop join (#5564)
add 4d07360e6f Support catalog.schema.table.column in SQL SELECT and WHERE (#5343)
add 35a3acf562 Minor: clean up aggregates.slt tests (#5599)
add e6d7106847 Minor: Port more aggregate tests to sqllogictests (#5574)
add 6bfede0e1e Add a utility function to get all of the PartitionedFile for an ExecutionPlan (#5572)
add 37138a53b4 minor: port some join tests to sqllogictests (#5567)
add 8b5dbd79ee Support arbitrary user defined partition column in `ListingTable` (rather than assuming they are always Dictionary encoded) (#5545)
add 34967696e9 feat: add the similar optimization function for bitwise negative (#5516)
add a578150e63 Clarify differences of DataFusion with other systems in README.md (#5578)
add 0f6931caa6 Minor: Add more documentation about table_partition_columns (#5576)
add 258af4bf69 Add Analyzer phase to DataFusion , add basic validation logic to Subquery Plans and Expressions (#5570)
add 4afd67a0e4 Use TableReference for TableScan (#5615)
add b35b5cbd3a preserve casts in rewrite_sort_cols_by_aggs (#5611)
add e92fc5abf0 Miscellaneous ArrayData Cleanup (#5612)
add 36fe974540 Update substrait requirement from 0.4 to 0.5 (#5620)
add c62938280a Do not break pipeline for window queries with GROUPS (#5587)
add 89c2d43054 fix dataframe only boolean/binary column got error on describe (#5585)
add d0585124b7 Minor: Add Documentation and Examples to `TableReference` (#5616)
add ef97b328c5 [FOLLOWUP] eliminate the duplicated sort keys in Order By clause (#5607)
add d3280d7243 Update for multistream (#5629)
add 3ccf1aebb6 Timestamp subtraction and interval operations for `ScalarValue` (#5603)
add d77ccc2597 Use modulus dyn kernels for arithmetic expressions (#5634)
add 89f2102666 Minor: reduce cloneing in `infer_placeholder_types` (#5638)
add 232176fe87 Move `SessionConfig` to `datafusion_execution` (#5581)
add c5c7ff4902 Update the type of `param_values` to `&[ScalarValue]` in function `replace_params_with_values` (#5640)
add 01e5b80730 WITH ORDER support on CREATE EXTERNAL TABLE (#5618)
add dc89c9b099 Median returns null on empty input instead of error (#5624)
add 6d6079b925 feat: Memory limited merge join (#5632)
add a73d4fcd51 Update rstest requirement from 0.16.0 to 0.17.0 (#5648)
add f4c0edb213 fix erro on Count(Expr:Wildcard) with DataFrame API (#5627)
add 26e1b20ea3 Add OuterReferenceColumn to Expr to represent correlated expression (#5593)
add 6667544465 Minor: Simplify Result<T, DataFusionError> (#5659)
add 9d60e1415b minor: remove redundant `DataFusionError` and fix `clippy` (#5669)
add 63acd57736 Add cast expression with bool, integers and decimal128 support (#5137)
add 92be85c0df Support `date_bin` with 2 arguments (#5643)
add 30dba587f4 Add LogicalPlanSignature and use in the optimizer loop (#5623)
add abc14eb8f2 fix: correct CountWildcardRule and move analyzer into a new directory. (#5671)
add 695db00a79 refactoring: added tests and fixed comments in "math_expressions" (#5656)
add 68e304087b improve: support combining multiple grouping expressions (#5559)
add 20e5100d25 community: improve issue template (#5668)
add 26cc3a881f minor: correct template (#5679)
add 3a8b5dae14 Change ObjectStoreRegistry from struct to trait to provide polymorphism (#5543)
add 8eaa292d8a Minor: Add `Extensions::new()` (#5676)
add 86740a8048 minor: add with_plan for Subquery (#5680)
add ef89e1b625 minor: reduce replication in `date_bin` implementation (#5673)
add 92c985e853 Fixes #5500 - Add a GitHub Actions workflow that builds the docs (#5670)
add af97ac886c Minor: port some content to the docs (#5684)
add 1ddc4b9040 Minor: Add logo back to sidebar (#5688)
add 11ac83615f Add window function support (#5653)
add b9964d63d7 Add -o option to all e2e benches (#5658)
add ece59a278a create table default to null (#5606)
add d8925bebc1 Minor: Document docs build process (#5687)
add e0abac7702 Minor: change doc formatting to force a republish (#5702)
add 8594ec7318 Move `TaskContext` to datafusion-execution (#5677)
add 3e247958b1 feat: `date_bin` supports MonthDayNano, microsecond and nanosecond units (#5698)
add b6fa286a50 fix: plan error when adding utf8 and timestamp (#5696)
add 60c7bd22d4 Handle serialization of TryCast (#5692)
add 0f83079e33 refactor: move InlineTableScan into Analyzer. (#5683)
add 26b8377b06 minor: Add doc comments to clarify what Analyzer is for (#5705)
add c825c84c22 Prepare 21.0.0 release (#5712)
add 74c3955db4 Fix parquet pruning when column names have periods (#5710)
add 7ddbfcc886 Executing LocalLimitExec with no column should not return an Err (#5709)
add 23dc74cfa9 Minor: Comments to .asf.yaml (#5703)
add da253ac7a2 exclude some .github files from rat license check (#5720)
add 5f72808fb2 Minor: Trigger docs CI build on changes to asf.yaml (#5726)
add 39b02d695a Use consistent arrow version (#5724)
add e87754cfe3 LIMIT edge cases (#5723)
add 9e8d928724 move and rename (#5736)
add 7b67d28156 fix: parse table name into TableReference on converting substrait read (#5716)
add 6309c76949 Modify tests for TPCH explain plans to avoid regressions (#5741)
add 621b81aef2 Minor: port select tests to sqllogictests (#5740)
add 8df18ab116 Introduce a common trait TreeNode for ExecutionPlan, PhysicalExpr, LogicalExpr, LogicalPlan (#5630)
add 55ad36a024 Minor: Reduce clones in AnalyzerRule (#5728)
add a6b8743210 Upgrade to substrait 0.5.1 (#5707)
add 9694f6a791 cargo test excluding doctests for mac,win64 (#5730)
add e549a20f01 chore: use `into_optimized_plan` instead of deprecated `to_logical_plan` (#5737)
add dda2c201f1 Move protoc generation to binary crate (#5718) (#5742)
add b4dde5722c Add compare.py to compare the output of multiple benchmarks (#5655)
add f306717602 move and rename (#5743)
add 971951becf Minor: port some decimal tests to sqllogictests (#5739)
add feddb3c94d Update to arrow 36 (#5685)
add c8a3d58988 Minor: Avoid some extra plan construction (#5761)
add 18b0587f63 minor: fix typos in planner.rs error msg (#5776)
add 8139ed40d0 minor: add timestampstz utf8 conversion test (#5777)
add 5c659244fb Update prost-build requirement from =0.11.7 to =0.11.8 (#5773)
add f210cac1e7 infer right side nullability for LEFT join (#5748)
add 8e125d2ecf minor: simplify sqllogic test schema check (#5769)
add c9bf3f3d1d Change required input ordering physical plan API to allow any NULLS FIRST / LAST and ASC / DESC (#5772)
add 04ef5c1304 Support timestamp and interval arithmetic (#5764)
add 9632c8e681 chore: update sql function documentation (#5780)
add b779c2f552 Minor: fix docs build (#5795)
add c77d3f6d88 Minor: use workspace arrow-array rather than hard coded 34 (#5794)
add 1d632ef5cd Return an error for invalid placeholder `$0` instead of panicking (#5787)
add c09edade14 Bump substrait version to 0.6.0 (#5798)
add ef9000514a Support `INTERVAL` SQL Type (#5792)
add 3e1fec1eeb Minor: fix flaking test (#5805)
add 667f19ebad Incorrect row comparison for tpch queries in benchmarks (#5784)
add f3f8bc6f89 Update ctor requirement from 0.1.22 to 0.2.0 (#5752)
add 75588fe611 Minor: Port some timestamp tests to sqllogictests (#5804)
add df28b01325 Minor: remove typed_min_max_batch_decimal128 (#5809)
add ab2ad35e82 Minor: Run rust workflow on changes to .github (#5758)
add 533bb5ccfb Minor: clean up timestamp arithmetic tests (#5803)
add 5bc005122f improve filter pushdown to join (#5770)
add 771c20ce2f Support `round()` function with two parameters (#5807)
add bff92c8547 Fix datatype of case expression (#5734)
add 7b90474adf Minor: Add ticket reference as comment (#5822)
add 187c6f0f17 Forward port version and Changelog for `21.1.0` (#5767)
add a7f828dcb3 Implement LogicalPlan support for transactions (#5827)
add 9cda815a4a Minor: port more timestamp tests to sqllogictests (#5832)
add ea7a746657 feat: Simplify LOG and POWER functions (#5816)
add 3ff8d06f55 fix: Enhance case expression type coercion (#5820)
add 9150d95395 feat: Add expression rewrite rules for LIKE and ILIKE (#5819)
add 99c476778c fix: type_coercion support interval + timestamp. (#5845)
add 536f2b8250 Add primary key information to CreateMemoryTable LogicalPlan node (#5835)
add 2191a69b2d Expose substrait protoc feature (#5852)
add fd350fa176 minor(sqlparser): encapsulate PlanerContext, reduce some clones (#5814)
add 56a5adcff1 Remove batch_idx from SortKeyCursor (#5855)
add d6c2233e21 Improving optimizer performance by eliminating unnecessary sort and distribution passes, add more SymmetricHashJoin improvements (#5754)
add 4d0c9fe4f1 Poll next open file future while scanning current file (#5800)
add 5fc91cc8fb Top down `EnforceSorting`, Extended testbench for `EnforceSorting` rule to prepare for refactors, additional functionality such as pushdowns over unions (#5661)
add 6dfbe48328 Move `TransactionStart`/`TransactionEnd`/`SetVariable` into `LogicalPlan::Statement` (#5842)
add b87871fdd1 Move content from README.md to docs site (#5824)
add 15c65ee60a Fix `interval` to use consistent units and arrow parser (#5806)
add bc37fc6f5c Enhance Asynchronous Performance of SHJ Implementation (#5864)
add eb251253f0 Prove timestamptz <=> timestamp now works (#5869)
add 33af59ead9 Update index.md (#5872)
add e86c83eb07 fix: coerce type for InSubquery and fix timestamp minus timestamp. (#5853)
add 47a5d4e468 chore: update sqllogictest version 0.13.2. (#5875)
add a3fd77b0af Minor: Add crates.io / API links to website (#5871)
add 237b586664 minor: made `information_schema` pub (#5862)
add 21bf4ffcca Update substrait requirement from 0.6.0 to 0.7.1 (#5876)
add 787d00047b refactor: move type_coercion to analyzer (#5831)
add 8d428c386c feat: BuiltinScalarFunction::Cbrt (#5839)
add 1bf7d14ba4 [Minor]: Update `architecture.md` to include April tech talks (#5865)
add dd248c2af2 [sqllogictest] Run tests on Windows (#5870)
add 513f78b47c Support create object store source tables without depending on environment variables (#5732)
add a1c60a1ba9 feat: Quote column names if required in error messages (#5778)
add e84ef3742a [MINOR]: Refactor to increase readability (#5874)
add 5c0fe0d7eb More realistic sort benchmarks (#5881)
add aa41c272e0 Removal of arithmetic operations for temporal values to binary.rs (#5846)
add 4f40070b0c Moving PipelineFixer above all rules to use ExecutionPlan APIs (#5880)
add c5e935a15f Add assert on hash children partition count (#5768)
add 6d1ec7ae22 Use ScalarValue for single input on math expression (#5891)
add e41711b29e Generify SortPreservingMerge (#5882) (#5879) (#5886)
add f00ef9d548 Fix: allow arbitrary exprs in VALUES clause (#5813)
add b7c55a9570 Merge
No new revisions were added by this update.
Summary of changes:
.asf.yaml | 15 +-
.github/ISSUE_TEMPLATE/bug_report.md | 20 -
.github/ISSUE_TEMPLATE/bug_report.yml | 27 +
.github/ISSUE_TEMPLATE/feature_request.md | 21 -
.github/ISSUE_TEMPLATE/feature_request.yml | 26 +
.github/dependabot.yml | 6 +-
.github/workflows/docs.yaml | 64 +
.github/workflows/rust.yml | 28 +-
Cargo.toml | 21 +-
README.md | 163 +-
benchmarks/Cargo.toml | 13 +-
benchmarks/README.md | 69 +-
benchmarks/compare.py | 184 ++
benchmarks/db-benchmark/README.md | 2 +
benchmarks/expected-plans/q1.txt | 29 +-
benchmarks/expected-plans/q10.txt | 75 +-
benchmarks/expected-plans/q11.txt | 109 +-
benchmarks/expected-plans/q12.txt | 41 +-
benchmarks/expected-plans/q13.txt | 56 +-
benchmarks/expected-plans/q14.txt | 37 +-
benchmarks/expected-plans/q15.txt | 89 +-
benchmarks/expected-plans/q16.txt | 68 +-
benchmarks/expected-plans/q17.txt | 61 +-
benchmarks/expected-plans/q18.txt | 69 +-
benchmarks/expected-plans/q19.txt | 42 +-
benchmarks/expected-plans/q2.txt | 151 +-
benchmarks/expected-plans/q20.txt | 102 +-
benchmarks/expected-plans/q21.txt | 117 +-
benchmarks/expected-plans/q22.txt | 72 +-
benchmarks/expected-plans/q3.txt | 66 +-
benchmarks/expected-plans/q4.txt | 48 +-
benchmarks/expected-plans/q5.txt | 101 +-
benchmarks/expected-plans/q6.txt | 23 +-
benchmarks/expected-plans/q7.txt | 110 +-
benchmarks/expected-plans/q8.txt | 139 +-
benchmarks/expected-plans/q9.txt | 97 +-
benchmarks/src/bin/h2o.rs | 21 +-
benchmarks/src/bin/nyctaxi.rs | 36 +-
benchmarks/src/bin/parquet.rs | 349 +++
benchmarks/src/bin/parquet_filter_pushdown.rs | 191 --
benchmarks/src/bin/tpch.rs | 200 +-
benchmarks/src/lib.rs | 139 +
datafusion-cli/Cargo.lock | 817 +++---
datafusion-cli/Cargo.toml | 10 +-
datafusion-cli/README.md | 2 +-
datafusion-cli/src/exec.rs | 185 +-
datafusion-cli/src/main.rs | 8 +-
datafusion-cli/src/object_storage.rs | 217 +-
datafusion-examples/Cargo.toml | 26 +-
datafusion-examples/README.md | 2 +-
datafusion-examples/examples/catalog.rs | 289 +++
datafusion-examples/examples/config_extension.rs | 52 +
datafusion-examples/examples/dataframe.rs | 6 +
datafusion-examples/examples/query-aws-s3.rs | 5 +-
datafusion-examples/examples/rewrite_expr.rs | 14 +-
datafusion-examples/examples/simple_udaf.rs | 65 +-
datafusion/CHANGELOG.md | 590 +++++
datafusion/common/Cargo.toml | 28 +-
datafusion/common/src/cast.rs | 94 +-
datafusion/common/src/column.rs | 287 ++-
datafusion/common/src/config.rs | 180 +-
datafusion/common/src/dfschema.rs | 357 ++-
datafusion/common/src/error.rs | 86 +-
datafusion/common/src/lib.rs | 17 +-
datafusion/common/src/parsers.rs | 327 +--
datafusion/common/src/scalar.rs | 1420 +++++++++-
datafusion/common/src/table_reference.rs | 414 ++-
datafusion/common/src/tree_node.rs | 337 +++
datafusion/common/src/utils.rs | 251 +-
datafusion/core/Cargo.toml | 70 +-
datafusion/core/benches/{merge.rs => sort.rs} | 523 ++--
datafusion/core/benches/sql_planner.rs | 76 +-
.../core/src/avro_to_arrow/arrow_array_reader.rs | 8 +-
datafusion/core/src/catalog/information_schema.rs | 15 +-
datafusion/core/src/catalog/listing_schema.rs | 5 +-
datafusion/core/src/catalog/mod.rs | 2 +-
datafusion/core/src/dataframe.rs | 380 ++-
datafusion/core/src/datasource/datasource.rs | 26 +-
.../core/src/datasource/default_table_source.rs | 10 +-
datafusion/core/src/datasource/file_format/avro.rs | 12 +-
datafusion/core/src/datasource/file_format/csv.rs | 20 +-
.../core/src/datasource/file_format/file_type.rs | 243 +-
datafusion/core/src/datasource/file_format/json.rs | 4 +-
datafusion/core/src/datasource/file_format/mod.rs | 13 +-
.../file_format}/options.rs | 2 +-
.../core/src/datasource/file_format/parquet.rs | 137 +-
datafusion/core/src/datasource/listing/helpers.rs | 92 +-
datafusion/core/src/datasource/listing/mod.rs | 67 +-
datafusion/core/src/datasource/listing/table.rs | 82 +-
.../core/src/datasource/listing_table_factory.rs | 32 +-
datafusion/core/src/datasource/memory.rs | 238 +-
datafusion/core/src/datasource/mod.rs | 4 +-
datafusion/core/src/datasource/view.rs | 13 +-
datafusion/core/src/execution/context.rs | 864 +++----
datafusion/core/src/execution/mod.rs | 13 +-
datafusion/core/src/lib.rs | 16 +-
.../src/physical_optimizer/aggregate_statistics.rs | 7 +-
.../src/physical_optimizer/coalesce_batches.rs | 9 +-
.../src/physical_optimizer/dist_enforcement.rs | 207 +-
.../physical_optimizer/global_sort_selection.rs | 51 +-
.../core/src/physical_optimizer/join_selection.rs | 54 +-
datafusion/core/src/physical_optimizer/mod.rs | 1 +
.../src/physical_optimizer/pipeline_checker.rs | 125 +-
.../core/src/physical_optimizer/pipeline_fixer.rs | 149 +-
datafusion/core/src/physical_optimizer/pruning.rs | 991 ++++---
.../core/src/physical_optimizer/repartition.rs | 93 +-
.../src/physical_optimizer/sort_enforcement.rs | 2239 +++++++++++++---
.../core/src/physical_optimizer/sort_pushdown.rs | 416 +++
.../core/src/physical_optimizer/test_utils.rs | 7 +-
datafusion/core/src/physical_optimizer/utils.rs | 80 +-
.../core/src/physical_plan/aggregates/mod.rs | 92 +-
.../src/physical_plan/aggregates/no_grouping.rs | 2 +-
.../core/src/physical_plan/aggregates/row_hash.rs | 9 +-
.../core/src/physical_plan/coalesce_batches.rs | 16 +-
datafusion/core/src/physical_plan/common.rs | 56 +-
datafusion/core/src/physical_plan/empty.rs | 6 +-
.../core/src/physical_plan/file_format/avro.rs | 10 +-
.../core/src/physical_plan/file_format/csv.rs | 148 +-
.../physical_plan/file_format/delimited_stream.rs | 255 --
.../src/physical_plan/file_format/file_stream.rs | 185 +-
.../core/src/physical_plan/file_format/json.rs | 160 +-
.../core/src/physical_plan/file_format/mod.rs | 335 ++-
.../core/src/physical_plan/file_format/parquet.rs | 597 +++--
.../physical_plan/file_format/parquet/metrics.rs | 4 +-
.../file_format/parquet/page_filter.rs | 120 +-
.../file_format/parquet/row_filter.rs | 107 +-
.../file_format/parquet/row_groups.rs | 70 +-
datafusion/core/src/physical_plan/filter.rs | 3 +-
.../core/src/physical_plan/joins/cross_join.rs | 211 +-
.../core/src/physical_plan/joins/hash_join.rs | 652 +++--
.../src/physical_plan/joins/hash_join_utils.rs | 579 +++++
datafusion/core/src/physical_plan/joins/mod.rs | 15 +-
.../src/physical_plan/joins/nested_loop_join.rs | 595 +++--
.../src/physical_plan/joins/sort_merge_join.rs | 269 +-
.../src/physical_plan/joins/symmetric_hash_join.rs | 2726 ++++++++++++++++++++
datafusion/core/src/physical_plan/joins/utils.rs | 245 +-
datafusion/core/src/physical_plan/limit.rs | 43 +-
datafusion/core/src/physical_plan/memory.rs | 14 +-
datafusion/core/src/physical_plan/metrics/mod.rs | 64 +-
datafusion/core/src/physical_plan/metrics/value.rs | 5 +
datafusion/core/src/physical_plan/mod.rs | 25 +-
datafusion/core/src/physical_plan/planner.rs | 118 +-
datafusion/core/src/physical_plan/projection.rs | 55 +
.../core/src/physical_plan/repartition/mod.rs | 9 +-
datafusion/core/src/physical_plan/rewrite.rs | 166 --
datafusion/core/src/physical_plan/sorts/builder.rs | 171 ++
datafusion/core/src/physical_plan/sorts/cursor.rs | 34 +-
datafusion/core/src/physical_plan/sorts/merge.rs | 258 ++
datafusion/core/src/physical_plan/sorts/mod.rs | 24 +-
datafusion/core/src/physical_plan/sorts/sort.rs | 40 +-
.../physical_plan/sorts/sort_preserving_merge.rs | 517 +---
datafusion/core/src/physical_plan/sorts/stream.rs | 145 ++
.../src/physical_plan/tree_node.rs} | 28 +-
datafusion/core/src/physical_plan/unnest.rs | 303 +++
.../windows/bounded_window_agg_exec.rs | 78 +-
datafusion/core/src/physical_plan/windows/mod.rs | 102 +-
.../src/physical_plan/windows/window_agg_exec.rs | 47 +-
datafusion/core/src/scheduler/mod.rs | 10 +-
datafusion/core/src/test/exec.rs | 70 -
datafusion/core/src/test/mod.rs | 40 +-
datafusion/core/src/test/object_store.rs | 4 +-
datafusion/core/src/test/variable.rs | 4 +-
.../core/src/{test_util.rs => test_util/mod.rs} | 188 +-
.../core/src/test_util/parquet.rs | 80 +-
datafusion/core/tests/custom_sources.rs | 30 +-
datafusion/core/tests/dataframe.rs | 538 +++-
datafusion/core/tests/dataframe_functions.rs | 16 +-
datafusion/core/tests/fifo.rs | 335 ++-
datafusion/core/tests/join_fuzz.rs | 2 +-
datafusion/core/tests/memory_limit.rs | 132 +-
datafusion/core/tests/parquet/custom_reader.rs | 4 +-
.../tests/parquet/data/timestamp_with_tz.parquet | Bin 0 -> 87689 bytes
datafusion/core/tests/parquet/filter_pushdown.rs | 4 +-
datafusion/core/tests/parquet/mod.rs | 43 +-
datafusion/core/tests/parquet/page_pruning.rs | 11 +-
datafusion/core/tests/parquet/row_group_pruning.rs | 33 +
datafusion/core/tests/path_partition.rs | 17 +-
datafusion/core/tests/repartition.rs | 60 +
datafusion/core/tests/row.rs | 2 +-
datafusion/core/tests/simplification.rs | 4 +
datafusion/core/tests/sort_key_cursor.rs | 30 +-
datafusion/core/tests/sql/aggregates.rs | 242 +-
datafusion/core/tests/sql/avro.rs | 16 +-
datafusion/core/tests/sql/create_drop.rs | 21 +-
datafusion/core/tests/sql/explain_analyze.rs | 80 +-
datafusion/core/tests/sql/expr.rs | 163 +-
datafusion/core/tests/sql/functions.rs | 16 +-
datafusion/core/tests/sql/group_by.rs | 18 +-
datafusion/core/tests/sql/idenfifers.rs | 8 +-
datafusion/core/tests/sql/intersection.rs | 87 -
datafusion/core/tests/sql/joins.rs | 2007 ++++++--------
datafusion/core/tests/sql/json.rs | 24 +-
datafusion/core/tests/sql/limit.rs | 162 --
datafusion/core/tests/sql/mod.rs | 355 +--
datafusion/core/tests/sql/order.rs | 136 +
datafusion/core/tests/sql/parquet.rs | 33 +
datafusion/core/tests/sql/predicates.rs | 517 +---
datafusion/core/tests/sql/projection.rs | 50 +-
datafusion/core/tests/sql/references.rs | 2 +-
datafusion/core/tests/sql/select.rs | 196 +-
datafusion/core/tests/sql/set_variable.rs | 61 +-
datafusion/core/tests/sql/subqueries.rs | 348 ++-
datafusion/core/tests/sql/timestamp.rs | 822 +-----
datafusion/core/tests/sql/udf.rs | 60 +-
datafusion/core/tests/sql/union.rs | 66 +-
datafusion/core/tests/sql/wildcard.rs | 76 +-
datafusion/core/tests/sql/window.rs | 2481 +-----------------
datafusion/core/tests/sqllogictests/README.md | 47 +-
.../tests/sqllogictests/src/engines/conversion.rs | 2 +-
.../src/engines/datafusion/create_table.rs | 82 -
.../sqllogictests/src/engines/datafusion/insert.rs | 92 -
.../sqllogictests/src/engines/datafusion/mod.rs | 59 +-
.../src/engines/datafusion/normalize.rs | 182 +-
.../core/tests/sqllogictests/src/engines/mod.rs | 1 +
.../core/tests/sqllogictests/src/engines/output.rs | 57 +
.../sqllogictests/src/engines/postgres/mod.rs | 162 +-
datafusion/core/tests/sqllogictests/src/main.rs | 47 +-
.../tests/sqllogictests/test_files/aggregate.slt | 458 +++-
.../sqllogictests/test_files/arrow_typeof.slt | 281 +-
.../core/tests/sqllogictests/test_files/dates.slt | 15 +-
.../core/tests/sqllogictests/test_files/ddl.slt | 90 +-
.../tests/sqllogictests/test_files/decimal.slt | 72 +-
.../tests/sqllogictests/test_files/describe.slt | 16 +-
.../tests/sqllogictests/test_files/explain.slt | 80 +
.../test_files/information_schema.slt | 69 +-
.../test_files/{strings.slt => intersection.slt} | 69 +-
.../tests/sqllogictests/test_files/interval.slt | 184 ++
.../core/tests/sqllogictests/test_files/join.slt | 507 +++-
...misc.slt => join_disable_repartition_joins.slt} | 20 +-
.../core/tests/sqllogictests/test_files/limit.slt | 302 +++
.../test_files/{select.slt => math.slt} | 91 +-
.../core/tests/sqllogictests/test_files/misc.slt | 4 +-
.../core/tests/sqllogictests/test_files/nullif.slt | 14 +-
.../core/tests/sqllogictests/test_files/order.slt | 263 +-
.../{pg_compat_union.slt => pg_compat_null.slt} | 179 +-
.../test_files/pg_compat/pg_compat_simple.slt | 30 +
.../pg_compat/pg_compat_type_coercion.slt | 126 +-
.../test_files/pg_compat/pg_compat_types.slt | 8 +-
.../test_files/pg_compat/pg_compat_union.slt | 12 +-
.../test_files/pg_compat/pg_compat_window.slt | 5 +-
.../tests/sqllogictests/test_files/predicates.slt | 279 ++
.../tests/sqllogictests/test_files/prepare.slt | 2 +-
.../core/tests/sqllogictests/test_files/scalar.slt | 112 +
.../core/tests/sqllogictests/test_files/select.slt | 184 +-
.../tests/sqllogictests/test_files/subquery.slt | 39 +
.../tests/sqllogictests/test_files/timestamps.slt | 552 +++-
.../core/tests/sqllogictests/test_files/tpch.slt | 59 +-
.../core/tests/sqllogictests/test_files/union.slt | 39 +-
.../core/tests/sqllogictests/test_files/window.slt | 2075 +++++++++++++++
datafusion/core/tests/tpcds_planning.rs | 10 +-
datafusion/core/tests/user_defined_aggregates.rs | 12 +-
datafusion/core/tests/user_defined_plan.rs | 27 +-
datafusion/core/tests/window_fuzz.rs | 27 +-
datafusion/{row => execution}/Cargo.toml | 39 +-
datafusion/execution/src/config.rs | 381 +++
.../execution => execution/src}/disk_manager.rs | 16 +-
datafusion/{substrait => execution}/src/lib.rs | 15 +-
.../execution => execution/src}/memory_pool/mod.rs | 120 +-
.../src}/memory_pool/pool.rs | 2 +-
.../src}/memory_pool/proxy.rs | 0
.../datasource => execution/src}/object_store.rs | 207 +-
.../src/execution => execution/src}/registry.rs | 2 +-
.../src/execution => execution/src}/runtime_env.rs | 78 +-
datafusion/execution/src/task.rs | 198 ++
datafusion/expr/Cargo.toml | 29 +-
datafusion/expr/src/built_in_function.rs | 4 +
datafusion/expr/src/expr.rs | 73 +-
datafusion/expr/src/expr_fn.rs | 138 +-
datafusion/expr/src/expr_rewriter.rs | 675 -----
datafusion/expr/src/expr_rewriter/mod.rs | 378 +++
datafusion/expr/src/expr_rewriter/order_by.rs | 209 +-
datafusion/expr/src/expr_schema.rs | 96 +-
datafusion/expr/src/expr_visitor.rs | 264 --
datafusion/expr/src/function.rs | 39 +-
datafusion/expr/src/lib.rs | 14 +-
datafusion/expr/src/logical_plan/builder.rs | 464 +++-
datafusion/expr/src/logical_plan/display.rs | 48 +-
datafusion/expr/src/logical_plan/extension.rs | 241 +-
datafusion/expr/src/logical_plan/mod.rs | 17 +-
datafusion/expr/src/logical_plan/plan.rs | 975 +++----
datafusion/expr/src/logical_plan/statement.rs | 188 ++
datafusion/expr/src/operator.rs | 153 ++
datafusion/expr/src/signature.rs | 4 +-
datafusion/expr/src/table_source.rs | 17 +-
datafusion/expr/src/tree_node/expr.rs | 377 +++
.../src/engines => expr/src/tree_node}/mod.rs | 7 +-
datafusion/expr/src/tree_node/plan.rs | 129 +
datafusion/expr/src/type_coercion/aggregates.rs | 172 +-
datafusion/expr/src/type_coercion/binary.rs | 219 +-
.../src/{type_coercion.rs => type_coercion/mod.rs} | 29 +-
datafusion/expr/src/type_coercion/other.rs | 20 +-
datafusion/expr/src/utils.rs | 488 +++-
datafusion/expr/src/window_frame.rs | 30 +
datafusion/jit/Cargo.toml | 24 +-
datafusion/optimizer/Cargo.toml | 36 +-
.../optimizer/src/analyzer/count_wildcard_rule.rs | 94 +
.../optimizer/src/analyzer/inline_table_scan.rs | 242 ++
datafusion/optimizer/src/analyzer/mod.rs | 237 ++
.../optimizer/src/{ => analyzer}/type_coercion.rs | 816 ++++--
.../optimizer/src/common_subexpr_eliminate.rs | 34 +-
.../optimizer/src/decorrelate_where_exists.rs | 381 ++-
datafusion/optimizer/src/decorrelate_where_in.rs | 96 +-
datafusion/optimizer/src/eliminate_cross_join.rs | 18 +-
.../optimizer/src/eliminate_duplicated_expr.rs | 136 +
datafusion/optimizer/src/eliminate_filter.rs | 2 +-
datafusion/optimizer/src/eliminate_outer_join.rs | 16 +-
datafusion/optimizer/src/eliminate_project.rs | 96 +
.../optimizer/src/extract_equijoin_predicate.rs | 20 +-
datafusion/optimizer/src/inline_table_scan.rs | 158 --
datafusion/optimizer/src/lib.rs | 13 +-
datafusion/optimizer/src/merge_projection.rs | 166 ++
datafusion/optimizer/src/optimizer.rs | 201 +-
datafusion/optimizer/src/plan_signature.rs | 123 +
.../optimizer/src/propagate_empty_relation.rs | 86 +-
datafusion/optimizer/src/push_down_filter.rs | 496 +++-
datafusion/optimizer/src/push_down_limit.rs | 4 +-
datafusion/optimizer/src/push_down_projection.rs | 1000 +++----
.../optimizer/src/replace_distinct_aggregate.rs | 103 +
.../optimizer/src/scalar_subquery_to_join.rs | 31 +-
.../optimizer/src/simplify_expressions/context.rs | 15 +
.../src/simplify_expressions/expr_simplifier.rs | 1155 ++++++++-
.../optimizer/src/simplify_expressions/regex.rs | 4 +-
.../src/simplify_expressions/simplify_exprs.rs | 20 +-
.../optimizer/src/simplify_expressions/utils.rs | 175 +-
datafusion/optimizer/src/test/mod.rs | 28 +-
datafusion/optimizer/src/test/user_defined.rs | 20 +-
.../optimizer/src/unwrap_cast_in_comparison.rs | 263 +-
datafusion/optimizer/src/utils.rs | 170 +-
datafusion/optimizer/tests/integration-test.rs | 112 +-
datafusion/physical-expr/Cargo.toml | 32 +-
.../src/aggregate/approx_percentile_cont.rs | 5 +
datafusion/physical-expr/src/aggregate/average.rs | 1 -
datafusion/physical-expr/src/aggregate/build_in.rs | 5 +-
datafusion/physical-expr/src/aggregate/count.rs | 6 +-
.../physical-expr/src/aggregate/count_distinct.rs | 437 +---
.../physical-expr/src/aggregate/hyperloglog.rs | 6 +-
datafusion/physical-expr/src/aggregate/median.rs | 4 +
datafusion/physical-expr/src/aggregate/min_max.rs | 48 +-
datafusion/physical-expr/src/aggregate/sum.rs | 2 -
.../physical-expr/src/aggregate/sum_distinct.rs | 58 +-
datafusion/physical-expr/src/aggregate/variance.rs | 3 +-
.../physical-expr/src/datetime_expressions.rs | 129 +-
datafusion/physical-expr/src/execution_props.rs | 18 +-
datafusion/physical-expr/src/expressions/binary.rs | 1752 +++++++++++--
.../src/expressions/binary/kernels.rs | 400 ++-
.../src/expressions/binary/kernels_arrow.rs | 255 +-
datafusion/physical-expr/src/expressions/case.rs | 71 +-
datafusion/physical-expr/src/expressions/cast.rs | 39 +
.../physical-expr/src/expressions/datetime.rs | 145 +-
.../src/expressions/get_indexed_field.rs | 102 +-
.../physical-expr/src/expressions/in_list.rs | 23 +-
.../physical-expr/src/expressions/try_cast.rs | 14 +-
datafusion/physical-expr/src/functions.rs | 41 +-
.../physical-expr/src/intervals/cp_solver.rs | 1056 ++++++++
.../src/intervals/interval_aritmetic.rs | 533 ++++
.../src/intervals}/mod.rs | 10 +-
.../physical-expr/src/intervals/test_utils.rs | 67 +
datafusion/physical-expr/src/lib.rs | 9 +-
datafusion/physical-expr/src/math_expressions.rs | 345 ++-
datafusion/physical-expr/src/physical_expr.rs | 25 +
datafusion/physical-expr/src/planner.rs | 41 +-
datafusion/physical-expr/src/regex_expressions.rs | 18 +-
datafusion/physical-expr/src/rewrite.rs | 164 --
datafusion/physical-expr/src/sort_expr.rs | 78 +-
.../src/{aggregate/utils.rs => tree_node.rs} | 30 +-
datafusion/physical-expr/src/utils.rs | 582 ++++-
datafusion/physical-expr/src/var_provider.rs | 2 +-
datafusion/physical-expr/src/window/aggregate.rs | 11 +-
datafusion/physical-expr/src/window/built_in.rs | 95 +-
datafusion/physical-expr/src/window/cume_dist.rs | 2 +-
datafusion/physical-expr/src/window/lead_lag.rs | 26 +-
datafusion/physical-expr/src/window/nth_value.rs | 2 +-
.../src/window/partition_evaluator.rs | 15 +-
datafusion/physical-expr/src/window/rank.rs | 33 +-
datafusion/physical-expr/src/window/row_number.rs | 15 +-
.../physical-expr/src/window/sliding_aggregate.rs | 4 +-
datafusion/physical-expr/src/window/window_expr.rs | 161 +-
.../physical-expr/src/window/window_frame_state.rs | 991 +++----
datafusion/proto/Cargo.toml | 33 +-
datafusion/proto/README.md | 15 +-
.../proto/gen}/Cargo.toml | 15 +-
datafusion/proto/{build.rs => gen/src/main.rs} | 31 +-
datafusion/proto/proto/datafusion.proto | 33 +-
.../rust_toml_fmt.sh => datafusion/proto/regen.sh | 6 +-
datafusion/proto/src/bytes/mod.rs | 37 +-
datafusion/proto/src/common.rs | 8 +-
datafusion/proto/src/generated/pbjson.rs | 339 ++-
datafusion/proto/src/generated/prost.rs | 49 +-
datafusion/proto/src/logical_plan/from_proto.rs | 72 +-
datafusion/proto/src/logical_plan/mod.rs | 197 +-
datafusion/proto/src/logical_plan/to_proto.rs | 176 +-
datafusion/proto/src/physical_plan/from_proto.rs | 28 +-
datafusion/proto/src/physical_plan/mod.rs | 194 +-
datafusion/proto/src/physical_plan/to_proto.rs | 23 +-
datafusion/row/Cargo.toml | 22 +-
datafusion/row/README.md | 2 +-
datafusion/row/src/writer.rs | 12 +-
datafusion/sql/Cargo.toml | 29 +-
datafusion/sql/src/expr/arrow_cast.rs | 719 ++++++
datafusion/sql/src/expr/function.rs | 88 +-
datafusion/sql/src/expr/identifier.rs | 419 ++-
datafusion/sql/src/expr/mod.rs | 70 +-
datafusion/sql/src/expr/order_by.rs | 3 +-
datafusion/sql/src/expr/subquery.rs | 39 +-
datafusion/sql/src/expr/value.rs | 62 +-
datafusion/sql/src/lib.rs | 1 +
datafusion/sql/src/parser.rs | 204 +-
datafusion/sql/src/planner.rs | 102 +-
datafusion/sql/src/query.rs | 39 +-
datafusion/sql/src/relation/join.rs | 84 +-
datafusion/sql/src/relation/mod.rs | 6 +-
datafusion/sql/src/select.rs | 144 +-
datafusion/sql/src/set_expr.rs | 17 +-
datafusion/sql/src/statement.rs | 332 ++-
datafusion/sql/src/utils.rs | 1 +
datafusion/sql/src/values.rs | 46 +-
datafusion/sql/tests/integration_test.rs | 517 +++-
datafusion/substrait/Cargo.toml | 23 +-
datafusion/substrait/README.md | 2 +-
datafusion/substrait/src/lib.rs | 4 +-
.../substrait/src/{ => logical_plan}/consumer.rs | 369 ++-
.../substrait/src/logical_plan/mod.rs | 3 +-
.../substrait/src/{ => logical_plan}/producer.rs | 348 ++-
datafusion/substrait/src/physical_plan/consumer.rs | 144 ++
.../substrait/src/physical_plan/mod.rs | 3 +-
datafusion/substrait/src/physical_plan/producer.rs | 81 +
datafusion/substrait/src/serializer.rs | 2 +-
.../{roundtrip.rs => roundtrip_logical_plan.rs} | 56 +-
.../substrait/tests/roundtrip_physical_plan.rs | 80 +
datafusion/substrait/tests/serialize.rs | 5 +-
datafusion/substrait/tests/testdata/data.csv | 6 +-
dev/release/README.md | 40 +-
dev/release/create-tarball.sh | 2 +-
dev/release/rat_exclude_files.txt | 3 +
dev/release/update_change_log-datafusion.sh | 2 +-
dev/update_datafusion_versions.py | 25 +-
docs/README.md | 25 +-
docs/build.sh | 2 +-
docs/source/_templates/docs-sidebar.html | 8 +-
docs/source/conf.py | 2 +-
docs/source/contributor-guide/architecture.md | 31 +
docs/source/contributor-guide/index.md | 48 +-
docs/source/contributor-guide/roadmap.md | 2 +-
docs/source/index.rst | 32 +-
docs/source/user-guide/cli.md | 110 +-
docs/source/user-guide/comparison.md | 52 +
docs/source/user-guide/configs.md | 74 +-
docs/source/user-guide/dataframe.md | 3 +-
docs/source/user-guide/example-usage.md | 13 +-
docs/source/user-guide/expressions.md | 15 +
.../source/user-guide/integration.md | 18 +-
docs/source/user-guide/introduction.md | 55 +-
docs/source/user-guide/sql/aggregate_functions.md | 317 ++-
docs/source/user-guide/sql/data_types.md | 66 +-
docs/source/user-guide/sql/ddl.md | 41 +
docs/source/user-guide/sql/scalar_functions.md | 1218 ++++++++-
docs/source/user-guide/users.md | 67 +
test-utils/Cargo.toml | 2 +-
458 files changed, 50531 insertions(+), 21378 deletions(-)
delete mode 100644 .github/ISSUE_TEMPLATE/bug_report.md
create mode 100644 .github/ISSUE_TEMPLATE/bug_report.yml
delete mode 100644 .github/ISSUE_TEMPLATE/feature_request.md
create mode 100644 .github/ISSUE_TEMPLATE/feature_request.yml
create mode 100644 .github/workflows/docs.yaml
create mode 100755 benchmarks/compare.py
create mode 100644 benchmarks/src/bin/parquet.rs
delete mode 100644 benchmarks/src/bin/parquet_filter_pushdown.rs
create mode 100644 datafusion-examples/examples/catalog.rs
create mode 100644 datafusion-examples/examples/config_extension.rs
create mode 100644 datafusion/common/src/tree_node.rs
rename datafusion/core/benches/{merge.rs => sort.rs} (52%)
rename datafusion/core/src/{execution => datasource/file_format}/options.rs (99%)
create mode 100644 datafusion/core/src/physical_optimizer/sort_pushdown.rs
delete mode 100644 datafusion/core/src/physical_plan/file_format/delimited_stream.rs
create mode 100644 datafusion/core/src/physical_plan/joins/hash_join_utils.rs
create mode 100644 datafusion/core/src/physical_plan/joins/symmetric_hash_join.rs
delete mode 100644 datafusion/core/src/physical_plan/rewrite.rs
create mode 100644 datafusion/core/src/physical_plan/sorts/builder.rs
create mode 100644 datafusion/core/src/physical_plan/sorts/merge.rs
create mode 100644 datafusion/core/src/physical_plan/sorts/stream.rs
copy datafusion/{proto/examples/expr_serde.rs => core/src/physical_plan/tree_node.rs} (58%)
create mode 100644 datafusion/core/src/physical_plan/unnest.rs
rename datafusion/core/src/{test_util.rs => test_util/mod.rs} (72%)
rename parquet-test-utils/src/lib.rs => datafusion/core/src/test_util/parquet.rs (71%)
create mode 100644 datafusion/core/tests/parquet/data/timestamp_with_tz.parquet
create mode 100644 datafusion/core/tests/repartition.rs
delete mode 100644 datafusion/core/tests/sql/intersection.rs
delete mode 100644 datafusion/core/tests/sqllogictests/src/engines/datafusion/create_table.rs
delete mode 100644 datafusion/core/tests/sqllogictests/src/engines/datafusion/insert.rs
create mode 100644 datafusion/core/tests/sqllogictests/src/engines/output.rs
create mode 100644 datafusion/core/tests/sqllogictests/test_files/explain.slt
copy datafusion/core/tests/sqllogictests/test_files/{strings.slt => intersection.slt} (54%)
create mode 100644 datafusion/core/tests/sqllogictests/test_files/interval.slt
copy datafusion/core/tests/sqllogictests/test_files/{misc.slt => join_disable_repartition_joins.slt} (76%)
create mode 100644 datafusion/core/tests/sqllogictests/test_files/limit.slt
copy datafusion/core/tests/sqllogictests/test_files/{select.slt => math.slt} (53%)
copy datafusion/core/tests/sqllogictests/test_files/pg_compat/{pg_compat_union.slt => pg_compat_null.slt} (66%)
create mode 100644 datafusion/core/tests/sqllogictests/test_files/predicates.slt
create mode 100644 datafusion/core/tests/sqllogictests/test_files/scalar.slt
create mode 100644 datafusion/core/tests/sqllogictests/test_files/window.slt
copy datafusion/{row => execution}/Cargo.toml (57%)
create mode 100644 datafusion/execution/src/config.rs
rename datafusion/{core/src/execution => execution/src}/disk_manager.rs (94%)
copy datafusion/{substrait => execution}/src/lib.rs (78%)
rename datafusion/{core/src/execution => execution/src}/memory_pool/mod.rs (62%)
rename datafusion/{core/src/execution => execution/src}/memory_pool/pool.rs (99%)
rename datafusion/{core/src/execution => execution/src}/memory_pool/proxy.rs (100%)
rename datafusion/{core/src/datasource => execution/src}/object_store.rs (52%)
rename datafusion/{core/src/execution => execution/src}/registry.rs (97%)
rename datafusion/{core/src/execution => execution/src}/runtime_env.rs (64%)
create mode 100644 datafusion/execution/src/task.rs
delete mode 100644 datafusion/expr/src/expr_rewriter.rs
create mode 100644 datafusion/expr/src/expr_rewriter/mod.rs
delete mode 100644 datafusion/expr/src/expr_visitor.rs
create mode 100644 datafusion/expr/src/logical_plan/statement.rs
create mode 100644 datafusion/expr/src/tree_node/expr.rs
copy datafusion/{core/tests/sqllogictests/src/engines => expr/src/tree_node}/mod.rs (89%)
create mode 100644 datafusion/expr/src/tree_node/plan.rs
rename datafusion/expr/src/{type_coercion.rs => type_coercion/mod.rs} (78%)
create mode 100644 datafusion/optimizer/src/analyzer/count_wildcard_rule.rs
create mode 100644 datafusion/optimizer/src/analyzer/inline_table_scan.rs
create mode 100644 datafusion/optimizer/src/analyzer/mod.rs
rename datafusion/optimizer/src/{ => analyzer}/type_coercion.rs (55%)
create mode 100644 datafusion/optimizer/src/eliminate_duplicated_expr.rs
create mode 100644 datafusion/optimizer/src/eliminate_project.rs
delete mode 100644 datafusion/optimizer/src/inline_table_scan.rs
create mode 100644 datafusion/optimizer/src/merge_projection.rs
create mode 100644 datafusion/optimizer/src/plan_signature.rs
create mode 100644 datafusion/optimizer/src/replace_distinct_aggregate.rs
create mode 100644 datafusion/physical-expr/src/intervals/cp_solver.rs
create mode 100644 datafusion/physical-expr/src/intervals/interval_aritmetic.rs
copy datafusion/{core/src/variable => physical-expr/src/intervals}/mod.rs (81%)
create mode 100644 datafusion/physical-expr/src/intervals/test_utils.rs
delete mode 100644 datafusion/physical-expr/src/rewrite.rs
copy datafusion/physical-expr/src/{aggregate/utils.rs => tree_node.rs} (59%)
rename {parquet-test-utils => datafusion/proto/gen}/Cargo.toml (68%)
rename datafusion/proto/{build.rs => gen/src/main.rs} (68%)
copy ci/scripts/rust_toml_fmt.sh => datafusion/proto/regen.sh (85%)
create mode 100644 datafusion/sql/src/expr/arrow_cast.rs
rename datafusion/substrait/src/{ => logical_plan}/consumer.rs (66%)
copy benchmarks/src/lib.rs => datafusion/substrait/src/logical_plan/mod.rs (95%)
rename datafusion/substrait/src/{ => logical_plan}/producer.rs (67%)
create mode 100644 datafusion/substrait/src/physical_plan/consumer.rs
copy benchmarks/src/lib.rs => datafusion/substrait/src/physical_plan/mod.rs (95%)
create mode 100644 datafusion/substrait/src/physical_plan/producer.rs
rename datafusion/substrait/tests/{roundtrip.rs => roundtrip_logical_plan.rs} (87%)
create mode 100644 datafusion/substrait/tests/roundtrip_physical_plan.rs
create mode 100644 docs/source/contributor-guide/architecture.md
create mode 100644 docs/source/user-guide/comparison.md
copy datafusion/row/README.md => docs/source/user-guide/integration.md (54%)
create mode 100644 docs/source/user-guide/users.md