cluster.setMetadataProvider(new CachingRelMetadataProvider(chainedProvider, hepPlanner));
RelNode rootRel = optiqPreCboPlan;
hepPlanner.setRoot(rootRel);
if (!optiqPreCboPlan.getTraitSet().equals(desiredTraits)) {
rootRel = hepPlanner.changeTraits(optiqPreCboPlan, desiredTraits);
}
hepPlanner.setRoot(rootRel);
optiqOptimizedPlan = hepPlanner.findBestExp();