17.0.0 (2023-01-27)
Full Changelog
Breaking changes:
Implemented enhancements:
- Add null-equals-null JOIN support in Substrait producer/consumer #5084
- Cleaner code for Read Options in reader methdos. #5024
- Substrait donation follow-on work #4897
- Add
len method to DataFrame #1926
Fixed bugs:
- Clippy failures in master branch and in PRs (due to new nightly Rust) #5080
Merged pull requests:
Full Changelog
Breaking changes:
- Change ExecutionPlan::maintains_input_order to return vector (to support multi children executors better) #5035 (mustafasrepo)
- Allow overriding error type in DataFusion Result #5000 (tustvold)
- Add dictionary_expresions feature (#4386) #4999 (tustvold)
Implemented enhancements:
- Retain the ordering of fields in the table schema when creating the projection for an update plan #5052
- [sqllogictest] Remove
integration-tests directory #5011 - [sqllogictest] Consolidate normalization code for the postgres and non-postgres paths #5010
- [sqllogictest] Don't orchestrate the postgres containers with rust / docker #5009
- check external table exist before creating a table #4997
- Implement
std::error::Error for DataFusionError #4991 - Return Vec<bool> instead of bool in ExecutionPlan::maintains_input_order #4980
- Add support for linear range search #4979
- Add support for bounded execution when window query involves UNBOUNDED PRECEDING #4978
- Infer prepared statement parameter types for insert queries with values clauses #4976
- The filter of outer table happens multiple time after optimizing in-subquery to join #4914
- Support Describe FILE in datafusion-cli #4913
- Release DataFusion 16 #4776
- Support writing lists in the arrow csv writer #4502
- Replace python based integration test with sqllogictest #4462
- Support CREATE TABLE table_name(...schema_fields) #4396
- Make Binary Dictionary Operations Optional #4386
- Improve / Cleanup DataFusion CI #3045
- More frequent DataFusion releases to crates.io (discussion) #2327
Fixed bugs:
- UPDATE statment for non existent column doesn't error out #5068
- Limit doesn't drop on first batch when limit size == fetch size. #5064
- Performance regressions since DataFusion 15.x #5060
- Quoted schema and table names result in double-quoted names in logical plan. #5058
- Homebrew release script has the amount of arguments being incorrect #5043
- CI Failing with Out of Disk #5040
- Doc links to LogicalPlan in the core package need updating. #5036
- explain analyze can not see csvexec execution time metrics #5014
- AVG(nulls) returns 0 rather than NULL #5007
- Invalid Placeholders return internal error (rather than Plan error) #5005
- select * from csv error #4996
- Incorrect nested error wrapped to
ArrowError:External variant for joins #4981
Documentation updates:
Closed issues:
- Support sub directories in sqllogictest runner #4709
- Bug displaying fractional seconds in
IntervalMonthDayNano #4220
Merged pull requests: