pub fn replace_order_preserving_variants(
context: DistributionContext,
) -> Result<DistributionContext>Expand description
Updates the DistributionContext if preserving ordering while changing partitioning is not helpful or desirable.
Assume that following plan is given:
"SortPreservingMergeExec: \[a@0 ASC]"
" RepartitionExec: partitioning=RoundRobinBatch(10), input_partitions=10, preserve_order=true",
" RepartitionExec: partitioning=RoundRobinBatch(10), input_partitions=2, preserve_order=true",
" DataSourceExec: file_groups={2 groups: \[\[x], \[y]]}, projection=\[a, b, c, d, e], output_ordering=\[a@0 ASC], file_type=parquet",This function converts plan above to the following:
"CoalescePartitionsExec"
" RepartitionExec: partitioning=RoundRobinBatch(10), input_partitions=10",
" RepartitionExec: partitioning=RoundRobinBatch(10), input_partitions=2",
" DataSourceExec: file_groups={2 groups: \[\[x], \[y]]}, projection=\[a, b, c, d, e], output_ordering=\[a@0 ASC], file_type=parquet",