@Override public void onMatch(RelOptRuleCall call) { final FilterPrel filterRel = (FilterPrel) call.rel(0); final ProjectPrel projectRel = (ProjectPrel) call.rel(1); final ScanPrel scanRel = call.rel(2); doMatch(call, scanRel, projectRel, filterRel); }
@Override public void onMatch(RelOptRuleCall call) { final FilterPrel filterRel = (FilterPrel) call.rel(0); final ScanPrel scanRel = (ScanPrel) call.rel(1); doMatch(call, scanRel, null, filterRel); }
@Override public boolean matches(RelOptRuleCall call) { final ScanPrel scan = (ScanPrel) call.rel(1); GroupScan groupScan = scan.getGroupScan(); return groupScan instanceof InfoSchemaGroupScan; }