public OptiqPreparingStmt( CatalogReader catalogReader, RelDataTypeFactory typeFactory, Schema schema, EnumerableRel.Prefer prefer, RelOptPlanner planner) { super(catalogReader, EnumerableConvention.INSTANCE); this.schema = schema; this.prefer = prefer; this.planner = planner; this.rexBuilder = new RexBuilder(typeFactory); }
private RexBuilder createRexBuilder() { return new RexBuilder(typeFactory); }
public OptiqPreparingStmt(Context context, CatalogReader catalogReader, RelDataTypeFactory typeFactory, OptiqSchema schema, EnumerableRel.Prefer prefer, RelOptPlanner planner, Convention resultConvention) { super(context, catalogReader, resultConvention); this.schema = schema; this.prefer = prefer; this.planner = planner; this.typeFactory = typeFactory; this.rexBuilder = new RexBuilder(typeFactory); }
private RexToLixTranslator( RexProgram program, JavaTypeFactory typeFactory, InputGetter inputGetter, BlockBuilder list, Map<RexNode, Boolean> exprNullableMap, RexBuilder builder) { this(program, typeFactory, inputGetter, list, exprNullableMap, builder, null); }
private RexToLixTranslator( RexProgram program, JavaTypeFactory typeFactory, InputGetter inputGetter, BlockBuilder list) { this( program, typeFactory, inputGetter, list, Collections.<RexNode, Boolean>emptyMap(), new RexBuilder(typeFactory)); }
protected SqlToRelConverter createSqlToRelConverter( final SqlValidator validator, final Prepare.CatalogReader catalogReader, final RelDataTypeFactory typeFactory) { return new SqlToRelConverter( null, validator, catalogReader, getPlanner(), new RexBuilder(typeFactory), StandardConvertletTable.INSTANCE); }
protected SqlToRelConverter createSqlToRelConverter( final SqlValidator validator, final Prepare.CatalogReader catalogReader, final RelDataTypeFactory typeFactory) { return new SqlToRelConverter( null, validator, catalogReader, getPlanner(), new RexBuilder(typeFactory)); }
@Before public void setUp() { typeFactory = new JavaTypeFactoryImpl(); rexBuilder = new RexBuilder(typeFactory); }
@Before public void setUp() { typeFactory = new JavaTypeFactoryImpl(); rexBuilder = new RexBuilder(typeFactory); }
static RelOptCluster newCluster(VolcanoPlanner planner) { RelOptQuery query = new RelOptQuery(planner); RelDataTypeFactory typeFactory = new SqlTypeFactoryImpl(); return query.createCluster( typeFactory, new RexBuilder(typeFactory)); }
static RelOptCluster newCluster(VolcanoPlanner planner) { RelOptQuery query = new RelOptQuery(planner); RelDataTypeFactory typeFactory = new SqlTypeFactoryImpl(); return query.createCluster( typeFactory, new RexBuilder(typeFactory)); }
@Before public void setUp() { // create some reusable fixtures RelDataTypeFactory typeFactory = new SqlTypeFactoryImpl(); intType = typeFactory.createSqlType(SqlTypeName.INTEGER); intType = typeFactory.createTypeWithNullability(intType, true); stringType = typeFactory.createSqlType(SqlTypeName.VARCHAR, 20); stringType = typeFactory.createTypeWithNullability(stringType, true); rexBuilder = new RexBuilder(typeFactory); intLiteral7 = rexBuilder.makeExactLiteral( BigDecimal.valueOf(7), intType); intLiteral490 = rexBuilder.makeExactLiteral( BigDecimal.valueOf(490), intType); intLiteral8point5 = rexBuilder.makeExactLiteral( new BigDecimal("8.5"), intType); sargFactory = new SargFactory(rexBuilder); }
@Before public void setUp() { // create some reusable fixtures RelDataTypeFactory typeFactory = new SqlTypeFactoryImpl(); intType = typeFactory.createSqlType(SqlTypeName.INTEGER); intType = typeFactory.createTypeWithNullability(intType, true); stringType = typeFactory.createSqlType(SqlTypeName.VARCHAR, 20); stringType = typeFactory.createTypeWithNullability(stringType, true); rexBuilder = new RexBuilder(typeFactory); intLiteral7 = rexBuilder.makeExactLiteral( BigDecimal.valueOf(7), intType); intLiteral490 = rexBuilder.makeExactLiteral( BigDecimal.valueOf(490), intType); intLiteral8point5 = rexBuilder.makeExactLiteral( new BigDecimal("8.5"), intType); sargFactory = new SargFactory(rexBuilder); }
/** Executes a prepare action. */ public <R> R perform(OptiqServerStatement statement, Frameworks.PrepareAction<R> action) { final OptiqPrepare.Context prepareContext = statement.createPrepareContext(); final JavaTypeFactory typeFactory = prepareContext.getTypeFactory(); OptiqCatalogReader catalogReader = new OptiqCatalogReader(prepareContext.getRootSchema(), prepareContext.config().caseSensitive(), prepareContext.getDefaultSchemaPath(), typeFactory); final RexBuilder rexBuilder = new RexBuilder(typeFactory); final RelOptPlanner planner = createPlanner(prepareContext, action.getConfig().getContext(), action.getConfig().getCostFactory()); final RelOptQuery query = new RelOptQuery(planner); final RelOptCluster cluster = query.createCluster(rexBuilder.getTypeFactory(), rexBuilder); return action.apply(cluster, catalogReader, prepareContext.getRootSchema().plus(), statement); }
@Before public void setUp() { typeFactory = new JavaTypeFactoryImpl(); rexBuilder = new RexBuilder(typeFactory); boolRelDataType = typeFactory.createSqlType(SqlTypeName.BOOLEAN); x = new RexInputRef( 0, typeFactory.createTypeWithNullability(boolRelDataType, true)); y = new RexInputRef( 1, typeFactory.createTypeWithNullability(boolRelDataType, true)); z = new RexInputRef( 2, typeFactory.createTypeWithNullability(boolRelDataType, true)); trueRex = rexBuilder.makeLiteral(true); falseRex = rexBuilder.makeLiteral(false); }
@Before public void setUp() { typeFactory = new JavaTypeFactoryImpl(); rexBuilder = new RexBuilder(typeFactory); boolRelDataType = typeFactory.createSqlType(SqlTypeName.BOOLEAN); x = new RexInputRef( 0, typeFactory.createTypeWithNullability(boolRelDataType, true)); y = new RexInputRef( 1, typeFactory.createTypeWithNullability(boolRelDataType, true)); z = new RexInputRef( 2, typeFactory.createTypeWithNullability(boolRelDataType, true)); trueRex = rexBuilder.makeLiteral(true); falseRex = rexBuilder.makeLiteral(false); }
@Ignore @Test /** Tests that we can analyze a program with no inputs that outputs two * constants. */ public void testAnalyzeTwoConstantProgram() { final RelDataTypeFactory typeFactory = new FieldTypeFactory(); final RelDataType inputType = typeFactory.createStructType( new RelDataTypeFactory.FieldInfoBuilder() ); final RexBuilder builder = new RexBuilder( typeFactory ); final RexProgramBuilder programBuilder = new RexProgramBuilder( inputType, builder ); programBuilder.addProject( builder.makeExactLiteral( BigDecimal.ONE ), "x" ); programBuilder.addProject( builder.makeCharLiteral( new NlsString( "foo", null, null ) ), "y" ); final RexProgram program = programBuilder.getProgram(); final ProgramUtil.Analyzed analyze = ProgramUtil.analyze( program ); assertTrue( analyze.hasConstants ); assertFalse( analyze.hasFunctions ); assertNull( analyze.permutation ); assertFalse( analyze.isComplex ); } }