Github user fhueske commented on the pull request:
https://github.com/apache/flink/pull/1255#issuecomment-162608149
Hi @ChengXiangLi, I tried the PR locally on my machine and it was working
quite well.
I found a few minor issues:
- You don't need to set keys and sort order for `FORWARD` shipping
strategies in `RangePartitionRewriter` line 118
- You set the `DataExchangeMode` twice in line 163 and 166 or
`RangePartitionRewriter`
- We need to set costs and properties for the PlanNodes that we create.
Otherwise `ExecutionEnvironment.getExecutionPlan()` fails with a NPE. Costs can
be 0, IMO but we should set the correct physical properties because these are
visualized and might confuse users.
- The injected plan node should have good names that indicate that they
belong to the range partitioner. I suggest:
- `sipPlanNode`: "RangePartition: LocalSample"
- `sicPlanNode`: "RangePartition: GlobalSample"
- `rbPlanNode`: "RangePartition: Histogram"
- `ariPlanNode`: "RangePartition: Partition"
- `prPlanNode`: "RangePartition: Partition" (IMO its fine to have the
same name here. Too much detail such as assign id and unwrap might just confuse)
What do you think?
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---