Every ConverterRule will match kind of RelNode with special calling convention, 
for ElasticsearchToEnumerableConverterRule, it is ElasticsearchRel.convention, 
you can see it from the constructor:
private ElasticsearchToEnumerableConverterRule(
   RelBuilderFactory relBuilderFactory) {
super(RelNode.class, (Predicate<RelNode>) r -> true,
     ElasticsearchRel.CONVENTION, EnumerableConvention.INSTANCE,
     relBuilderFactory, "ElasticsearchToEnumerableConverterRule");
}

Best,
Yuzhao Chen
在 2019年3月11日 +0800 AM11:04,Jocean shi <[email protected]>,写道:
> Hi All:
> I have a question.
> The ElasticsearchToEnumerableConverterRule is used to match
> RelNode.class. I think this rule can convert all RelNode. but only convert
> the root RelNode in fact. why?
>
> Jocean.shi
> Best wishes

Reply via email to