Patched DF 48.0.1 (take 1) #69
Closed
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Tracking issue: https://github.com/influxdata/influxdb_iox/issues/14762
Patches
Patches map to commits 1:1 (i.e. every patch is exactly 1 commit) and are ordered for easier correlation of the description and the respective commits. They are also grouped in 3 stages.
A: Dummy
No actual patches, can be dropped at any point:
B: CI Fixes
Need to get CI up and running before picking any actual patches:
Fix intermittent SQL logic test failure in limit.slt by adding ORDER BY clause
That's Fix intermittent SQL logic test failure in limit.slt by adding ORDER BY clause apache/datafusion#16257 . Can be dropped with DF 49.
All commits afterwards should build cleanly!
C: Patches
These are the actual relevant patches:
chore: default=true for skip_physical_aggregate_schema_check, and add warn logging
:until we chase down all warnings in our iox logs (see https://github.com/influxdata/influxdb_iox/issues/12404 )
(New) Test + workaround for SanityCheck plan
:according to this slack thread, we can drop this with DataFusion version 49.
chore: skip order calculation / exponential planning
:workaround for Exponential planning time (100s of seconds) with
UNION
andORDER BY
queries apache/datafusion#13748 -- which should be fixed in DataFusion version 49fix: temporary fix to handle incorrect coalesce (inserted during EnforceDistribution) which later causes an error during EnforceSort (without our patch). The next DataFusion version 46 upgrade does the proper fix, which is to not insert the coalesce in the first place.
:There is EAR-5822 (also see https://github.com/influxdata/influxdb_iox/issues/13310 ) despite what the note in Patched DataFusion version
45.0.0
#54 and ParallelizeSorts, a subrule of EnforceSorting optimizer, should not remove necessary coalesce. apache/datafusion#14691 (comment) say, this is still required for DF version 46. Otherwise the regression test fails. Also see this slack thread.fix: reserved keywords in qualified column names
:That's fix: reserved keywords in qualified column names apache/datafusion#16584 . Can be dropped with DF 49.
feat: add SchemaProvider::table_type(table_name: &str)
That's feat: add SchemaProvider::table_type(table_name: &str) apache/datafusion#16401 . Can be dropped with DF 49.
fix: support nullable columns in pre-sorted data sources
That's fix: support nullable columns in pre-sorted data sources apache/datafusion#16783 . Not merged yet.