@Override public List<ColumnStrategy> getColumnStrategies() { return RelOptTableImpl.columnStrategies(this); }
public FrameworkConfig buildFrameWorkConfig() { if (hasUdf) { List<SqlOperatorTable> sqlOperatorTables = new ArrayList<>(); sqlOperatorTables.add(SqlStdOperatorTable.instance()); sqlOperatorTables.add(new CalciteCatalogReader(CalciteSchema.from(schema), Collections.emptyList(), typeFactory, new CalciteConnectionConfigImpl(new Properties()))); return Frameworks.newConfigBuilder().defaultSchema(schema) .operatorTable(new ChainedSqlOperatorTable(sqlOperatorTables)).build(); } else { return Frameworks.newConfigBuilder().defaultSchema(schema).build(); } }
if (rootCause != null && rootCause instanceof OnlyPrepareEarlyAbortException) { OnlyPrepareEarlyAbortException abortException = (OnlyPrepareEarlyAbortException) rootCause; CalcitePrepare.Context context = abortException.getContext(); CalcitePrepare.ParseResult preparedResult = abortException.getPreparedResult(); List<RelDataTypeField> fieldList = preparedResult.rowType.getFieldList();
public PreparedResult prepareQueryable( final Queryable queryable, RelDataType resultType) { return prepare_(() -> { final RelOptCluster cluster = prepare.createCluster(planner, rexBuilder); return new LixToRelTranslator(cluster, CalcitePreparingStmt.this) .translate(queryable); }, resultType); }
public RelNode get() { final RelOptCluster cluster = prepare.createCluster(planner, rexBuilder); return new LixToRelTranslator(cluster, CalcitePreparingStmt.this) .translate(queryable); } }, resultType);
public ScalarTranslator bind( List<ParameterExpression> parameterList, List<RexNode> values) { return new LambdaScalarTranslator( rexBuilder, parameterList, values); }
public Pair<SqlNode, RelDataType> validateAndGetType(SqlNode sqlNode) throws ValidationException { final SqlNode validatedNode = this.validate(sqlNode); final RelDataType type = this.validator.getValidatedNodeType(validatedNode); return Pair.of(validatedNode, type); }
/** * Creates a copy of this RelOptTable. The new RelOptTable will have newRowType. */ public RelOptTableImpl copy(RelDataType newRowType) { return new RelOptTableImpl(this.schema, newRowType, this.names, this.table, this.expressionFunction, this.rowCount); }
/** 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 planner. * * @param config Planner configuration * @return Planner */ public static Planner getPlanner(FrameworkConfig config) { return new PlannerImpl(config); }
@Override protected SqlValidator getSqlValidator() { if (sqlValidator == null) { sqlValidator = createSqlValidator(catalogReader); } return sqlValidator; }
@Override protected PreparedResult createPreparedExplanation( RelDataType resultType, RelDataType parameterRowType, RelRoot root, SqlExplainFormat format, SqlExplainLevel detailLevel) { return new CalcitePreparedExplain(resultType, parameterRowType, root, format, detailLevel); }
@Override void from(PlannerImpl planner) { planner.ensure(STATE_0_CLOSED); planner.reset(); } },
CalciteMaterializer(CalcitePrepareImpl prepare, CalcitePrepare.Context context, CatalogReader catalogReader, CalciteSchema schema, RelOptPlanner planner, SqlRexConvertletTable convertletTable) { super(prepare, context, catalogReader, catalogReader.getTypeFactory(), schema, EnumerableRel.Prefer.ANY, planner, BindableConvention.INSTANCE, convertletTable); }
public void reset() { ensure(State.STATE_0_CLOSED); open = true; state = State.STATE_1_RESET; }
public PreparedResult prepareQueryable( final Queryable queryable, RelDataType resultType) { return prepare_(() -> { final RelOptCluster cluster = prepare.createCluster(planner, rexBuilder); return new LixToRelTranslator(cluster, CalcitePreparingStmt.this) .translate(queryable); }, resultType); }
public QueryPlanner(SchemaPlus schema) { final List<RelTraitDef> traitDefs = new ArrayList<RelTraitDef>(); traitDefs.add(ConventionTraitDef.INSTANCE); traitDefs.add(RelCollationTraitDef.INSTANCE); List<SqlOperatorTable> sqlOperatorTables = new ArrayList<>(); sqlOperatorTables.add(SqlStdOperatorTable.instance()); sqlOperatorTables.add(new CalciteCatalogReader(CalciteSchema.from(schema), Collections.emptyList(), typeFactory, new CalciteConnectionConfigImpl(new Properties()))); FrameworkConfig config = Frameworks.newConfigBuilder() .defaultSchema(schema) .operatorTable(new ChainedSqlOperatorTable(sqlOperatorTables)) .traitDefs(traitDefs) .context(Contexts.EMPTY_CONTEXT) .ruleSets(StreamsStormRuleSets.getRuleSets()) .costFactory(null) .typeSystem(StormRelDataTypeSystem.STORM_REL_DATATYPE_SYSTEM) .build(); this.planner = Frameworks.getPlanner(config); }
public ScalarTranslator bind( List<ParameterExpression> parameterList, List<RexNode> values) { return new LambdaScalarTranslator( rexBuilder, parameterList, values); }
public static RelOptTableImpl create( RelOptSchema schema, RelDataType rowType, List<String> names, Expression expression) { return new RelOptTableImpl(schema, rowType, names, null, c -> expression, null); }
public static RelOptTableImpl create( RelOptSchema schema, RelDataType rowType, List<String> names, Expression expression) { return new RelOptTableImpl(schema, rowType, names, null, c -> expression, null); }