/** Creates a query planner and initializes it with a default set of * rules. */ protected RelOptPlanner createPlanner(CalcitePrepare.Context prepareContext) { return createPlanner(prepareContext, null, null); }
/** Creates a query planner and initializes it with a default set of * rules. */ protected RelOptPlanner createPlanner(CalcitePrepare.Context prepareContext) { return createPlanner(prepareContext, null, null); }
/** Creates a query planner and initializes it with a default set of * rules. */ protected RelOptPlanner createPlanner(CalcitePrepare.Context prepareContext) { return createPlanner(prepareContext, null, null); }
public RelOptPlanner apply(Context context) { return createPlanner(context, null, null); } });
/** Creates a collection of planner factories. * * <p>The collection must have at least one factory, and each factory must * create a planner. If the collection has more than one planner, Calcite will * try each planner in turn.</p> * * <p>One of the things you can do with this mechanism is to try a simpler, * faster, planner with a smaller rule set first, then fall back to a more * complex planner for complex and costly queries.</p> * * <p>The default implementation returns a factory that calls * {@link #createPlanner(org.apache.calcite.jdbc.CalcitePrepare.Context)}.</p> */ protected List<Function1<Context, RelOptPlanner>> createPlannerFactories() { return Collections.singletonList( context -> createPlanner(context, null, null)); }
/** Creates a collection of planner factories. * * <p>The collection must have at least one factory, and each factory must * create a planner. If the collection has more than one planner, Calcite will * try each planner in turn.</p> * * <p>One of the things you can do with this mechanism is to try a simpler, * faster, planner with a smaller rule set first, then fall back to a more * complex planner for complex and costly queries.</p> * * <p>The default implementation returns a factory that calls * {@link #createPlanner(org.apache.calcite.jdbc.CalcitePrepare.Context)}.</p> */ protected List<Function1<Context, RelOptPlanner>> createPlannerFactories() { return Collections.singletonList( context -> createPlanner(context, null, null)); }
/** Executes a prepare action. */ public <R> R perform(CalciteServerStatement statement, Frameworks.PrepareAction<R> action) { final CalcitePrepare.Context prepareContext = statement.createPrepareContext(); final JavaTypeFactory typeFactory = prepareContext.getTypeFactory(); final CalciteSchema schema = action.getConfig().getDefaultSchema() != null ? CalciteSchema.from(action.getConfig().getDefaultSchema()) : prepareContext.getRootSchema(); CalciteCatalogReader catalogReader = new CalciteCatalogReader(schema.root(), schema.path(null), typeFactory, prepareContext.config()); final RexBuilder rexBuilder = new RexBuilder(typeFactory); final RelOptPlanner planner = createPlanner(prepareContext, action.getConfig().getContext(), action.getConfig().getCostFactory()); final RelOptCluster cluster = createCluster(planner, rexBuilder); return action.apply(cluster, catalogReader, prepareContext.getRootSchema().plus(), statement); }
/** Executes a prepare action. */ public <R> R perform(CalciteServerStatement statement, Frameworks.PrepareAction<R> action) { final CalcitePrepare.Context prepareContext = statement.createPrepareContext(); final JavaTypeFactory typeFactory = prepareContext.getTypeFactory(); final CalciteSchema schema = action.getConfig().getDefaultSchema() != null ? CalciteSchema.from(action.getConfig().getDefaultSchema()) : prepareContext.getRootSchema(); CalciteCatalogReader catalogReader = new CalciteCatalogReader(schema.root(), schema.path(null), typeFactory, prepareContext.config()); final RexBuilder rexBuilder = new RexBuilder(typeFactory); final RelOptPlanner planner = createPlanner(prepareContext, action.getConfig().getContext(), action.getConfig().getCostFactory()); final RelOptCluster cluster = createCluster(planner, rexBuilder); return action.apply(cluster, catalogReader, prepareContext.getRootSchema().plus(), statement); }
/** Executes a prepare action. */ public <R> R perform(CalciteServerStatement statement, Frameworks.PrepareAction<R> action) { final CalcitePrepare.Context prepareContext = statement.createPrepareContext(); final JavaTypeFactory typeFactory = prepareContext.getTypeFactory(); final CalciteSchema schema = action.getConfig().getDefaultSchema() != null ? CalciteSchema.from(action.getConfig().getDefaultSchema()) : prepareContext.getRootSchema(); CalciteCatalogReader catalogReader = new CalciteCatalogReader(schema.root(), prepareContext.config().caseSensitive(), schema.path(null), typeFactory); final RexBuilder rexBuilder = new RexBuilder(typeFactory); final RelOptPlanner planner = createPlanner(prepareContext, action.getConfig().getContext(), action.getConfig().getCostFactory()); final RelOptCluster cluster = createCluster(planner, rexBuilder); return action.apply(cluster, catalogReader, prepareContext.getRootSchema().plus(), statement); }