dev/changelog/41.0.0.md
This release consists of 245 commits from 69 contributors. See credits at the end of this changelog for more information.
Breaking changes:
Dialect trait Send + Sync #11504 (y-f-u)as_any, Debug to FileFormatFactory #11588 (Lordworms)AggregateExt --> ExprFunctionExt) #11550 (timsaucer)ColumnOptions to ParquetColumnOptions #11512 (alamb)input_type --> input_types on AggregateFunctionExpr / AccumulatorArgs / StateFieldsArgs #11666 (lewiszlw)repart_time to repartition_time #11703 (alamb)AggregateFunctionDefinition #11803 (lewiszlw)Performance related:
Implemented enhancements:
fail_on_overflow option to BinaryExpr #11400 (andygrove)unnest in GROUP BY clause #11469 (JasonLi-cn)COUNT() #11229 (tshauck)Utf8View type in starts_with function #11787 (tshauck)Fixed bugs:
regexp_replace fails when pattern or replacement is a scalar NULL #11459 (Weijun-H)UnKnownColumns not equal to others physical exprs #11536 (jonahgao)LogFunc::output_ordering() #11571 (jonahgao)null_equals_null to false when convert_cross_join_to_inner_join #11738 (jonahgao)collect_columns quadratic complexity #11843 (crepererum)Documentation updates:
to_local_time() in function reference docs #11401 (appletreeisyellow)newlines_in_values CSV option #11533 (connec)simplify_demo() example #11576 (kavirajk)functions-array to functions-nested #11602 (goldmedal)TableProvider::scan to take a trait rather than SessionState #11516 (findepi)string-view2 branch: reading from parquet up to 2x faster for some ClickBench queries (not on by default) #11667 (alamb)AggregateFunction / AggregateFunctionDefinition::BuiltIn #11013 (edmondop)map and make_map functions #11799 (Weijun-H)Other:
NULL literals in where clause #11266 (xinlifoobar)filter.rs, fix clippy due to logical conflict #11368 (comphead)6.0.1 #11335 (alamb)unalias_nested calls for creating Filter's #11340 (alamb)clone_on_ref_ptr clippy lint on optimizer #11346 (lewiszlw)resources_err! error macro #11374 (comphead)clone_on_ref_ptr clippy lint on common #11384 (lewiszlw)from_substrait_rex #11337 (alamb)array_agg to return null on no input rather than empty list #11299 (jayzhan211)COUNT DISTINCT with multiple arguments #11391 (jonahgao)clone_on_ref_ptr clippy lint on sql #11380 (lewiszlw)overlay planning toExprPlanner #11398 (dharanad)MAKE_MAP and MAP #11361 (goldmedal)CommonSubexprEliminate rule with surely and conditionally evaluated stats #11357 (peter-toth)AggregateStatistics still work when min/max is converted to udaf #11261 (Rachelint)create_aggregate_expr #11458 (jayzhan211)map and make_map #11461 (Rachelint)clone_on_ref_ptr clippy lint on functions* #11468 (lewiszlw)repart_time and send_time metrics #11440 (korowa)row_groups.rs to row_group_filter.rs #11481 (alamb)datetime to timestamp and interval #11466 (y-f-u)StringView, merge changes from string-view development branch #11402 (alamb)clone_on_ref_ptr clippy lints on proto #11465 (lewiszlw)TableParquetOptions and ParquetWriterOptions #11444 (wiedld)ArrowWriter and TableParquetOptions #11524 (wiedld)datafusion-physical-optimizer crate #11507 (lewiszlw)test_enabled_backtrace requirements to run #11525 (comphead)StatisticsExtractor #11483 (alamb)PushDownFilter #11532 (jayzhan211)ArrayAgg to a UserDefinedAggregate #11448 (jayzhan211)MAKE_MAP to ExprPlanner #11452 (goldmedal)SessionStateDefaults into its own module #11566 (alamb)sql_compound_identifier_to_expr to ExprPlanner #11487 (dharanad)map and move map to functions-array #11560 (goldmedal)Column related tests and rename column.rs #11573 (jonahgao)OrderSensitiveArrayAgg to be a user defined aggregate #11564 (jayzhan211)DFSchema::field_with_unqualified_name #11619 (jonahgao)concat_batches from arrow-rs #11615 (alamb)signum function bug when 0.0 input #11580 (getChan)named_struct field names #11614 (dharanad)CrossJoinExec and NestedLoopsJoinExec #11632 (alamb)ready! macro to simplify FilterExec #11649 (alamb)CsvExecBuilder for creating CsvExec #11633 (connec)AccumulatorArgs::is_reversed in NthValueAgg #11669 (jcsherin)SessionState #11642 (alamb)52.2.0 #11691 (alamb)RepartitionMetrics::repartition_time to RepartitionMetrics::repart_time to match metric #11478 (alamb)remove_join_expressions #11693 (jonahgao)ScalarUDF::call #11727 (alamb)cargo release in bench.sh #11722 (alamb)timestamp comparison via coercsion #11711 (jeffreyssmith2nd)StatisticsConverter from arrow-rs in DataFusion #11479 (alamb)plan_to_sql: Add wildcard projection to SELECT statement if no projection was set #11744 (LatrecheYasser)DataType::from_str in arrow-cast #11254 (alamb)TrackedMemoryPool with better error messages on exhaustion #11665 (wiedld)Debug for logical plan nodes #11757 (lewiszlw)COUNT(DISTINCT) on StringView panics #11768 (XiangpengHao)ApplyFunctionRewrites if there are no function rewrites #11765 (gruuya)CoalesceBatchesStream to a struct #11610 (alamb)Signature::numeric #11778 (matthewmturner)Map literal #11780 (goldmedal)LogicalPlan Debug differently than Display #11774 (lewiszlw)DISTINCT & GROUP BY are in the same query #11781 (mertak-synnada)create_sliding_accumulator repeatedly #11813 (lewiszlw)eq inside nullif #11697 (simonvandel)aggregate_statistics to datafusion-physical-optimizer #11798 (Weijun-H)should_skip_aggregation #11821 (alamb)path_partition test into core_integration #11831 (alamb)core_integration #11830 (alamb)Statistics in ListingTable and PartitionedFile #11802 (Rachelint)LogicalPlan::CreateIndex #11817 (lewiszlw)object_store to 0.10.2 #11860 (danlgrca)skipped_aggregation_rows metric to aggregate operator #11706 (alamb)Utf8View to Utf8 to support || from StringViewArray #11796 (dharanad)ANY() op #11849 (samuelcolvin)Thank you to everyone who contributed to this release. Here is a breakdown of commits (PRs merged) per contributor.
48 Andrew Lamb
20 张林伟
9 Jay Zhan
9 Jonah Gao
8 Andy Grove
8 Lordworms
8 Piotr Findeisen
8 wiedld
7 Oleks V
6 Jax Liu
5 Alex Huang
5 Arttu
5 JasonLi
5 Trent Hauck
5 Xin Li
4 Dharan Aditya
4 Edmondo Porcu
4 dependabot[bot]
4 kamille
4 yfu
3 Daniël Heres
3 Eduard Karacharov
3 Georgi Krastev
2 Chris Connelly
2 Chunchun Ye
2 June
2 Marco Neumann
2 Marko Grujic
2 Mehmet Ozan Kabak
2 Michael J Ward
2 Mohamed Abdeen
2 Ruihang Xia
2 Sergei Grebnov
2 Xiangpeng Hao
2 jcsherin
2 kf zheng
2 mertak-synnada
1 Adrian Garcia Badaracco
1 Alexander Rafferty
1 Alihan Çelikcan
1 Ariel Marcus
1 Berkay Şahin
1 Bruce Ritchie
1 Devesh Rahatekar
1 Douglas Anderson
1 Drew Hayward
1 Jeffrey Smith II
1 Kaviraj Kanagaraj
1 Kezhu Wang
1 Leonardo Yvens
1 Lorrens Pantelis
1 Matthew Cramerus
1 Matthew Turner
1 Mustafa Akur
1 Namgung Chan
1 Ning Sun
1 Peter Toth
1 Qianqian
1 Samuel Colvin
1 Shehab Amin
1 Simon Vandel Sillesen
1 Tim Saucer
1 Wendell Smith
1 Yasser Latreche
1 Yongting You
1 danlgrca
1 tmi
1 waruto
1 zhuliquan
Thank you also to everyone who contributed in other ways such as filing issues, reviewing PRs, and providing feedback on this release.