本文整理了Java中org.apache.calcite.rex.RexBuilder.<init>
方法的一些代码示例,展示了RexBuilder.<init>
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。RexBuilder.<init>
方法的具体详情如下:
包路径:org.apache.calcite.rex.RexBuilder
类名称:RexBuilder
方法名:<init>
[英]Creates a RexBuilder.
[中]创建一个RexBuilder。
代码示例来源:origin: apache/flink
public RexBuilder getRexBuilder() {
return new RexBuilder(typeFactory);
}
代码示例来源:origin: apache/storm
public AbstractStreamsProcessor compile(Map<String, ISqlStreamsDataSource> sources, String query) throws Exception {
StreamsRel relNode = getPlan(query);
StreamsPlanCreator streamsPlanCreator = new StreamsPlanCreator(sources, new RexBuilder(typeFactory));
relNode.streamsPlan(streamsPlanCreator);
final StreamBuilder streamBuilder = streamsPlanCreator.getStreamBuilder();
final Stream<Values> lastStream = streamsPlanCreator.pop();
final DataContext dc = streamsPlanCreator.getDataContext();
final List<CompilingClassLoader> cls = streamsPlanCreator.getClassLoaders();
return new AbstractStreamsProcessor() {
@Override
public StormTopology build() {
return streamBuilder.build();
}
@Override
public Stream<Values> outputStream() {
return lastStream;
}
@Override
public DataContext getDataContext() {
return dc;
}
@Override
public List<CompilingClassLoader> getClassLoaders() {
return cls;
}
};
}
代码示例来源:origin: apache/hive
private static RelNode createMaterializedViewScan(HiveConf conf, Table viewTable) {
final RexBuilder rexBuilder = new RexBuilder(
new JavaTypeFactoryImpl(
new HiveTypeSystemImpl()));
代码示例来源:origin: apache/hive
@Before
public void before() {
HepProgramBuilder programBuilder = new HepProgramBuilder();
programBuilder.addRuleInstance(HiveReduceExpressionsWithStatsRule.INSTANCE);
planner = new HepPlanner(programBuilder.build());
JavaTypeFactoryImpl typeFactory = new JavaTypeFactoryImpl();
RexBuilder rexBuilder = new RexBuilder(typeFactory);
final RelOptCluster optCluster = RelOptCluster.create(planner, rexBuilder);
RelDataType rowTypeMock = typeFactory.createStructType(MyRecord.class);
Mockito.doReturn(rowTypeMock).when(tableMock).getRowType();
Mockito.doReturn(tableMock).when(schemaMock).getTableForMember(Matchers.any());
statObj = new ColStatistics("_int", "int");
Mockito.doReturn(Lists.newArrayList(statObj)).when(tableMock).getColStat(Matchers.anyListOf(Integer.class), Matchers.eq(false));
Mockito.doReturn(hiveTableMDMock).when(tableMock).getHiveTableMD();
Mockito.doReturn(tableParams).when(hiveTableMDMock).getParameters();
builder = HiveRelFactories.HIVE_BUILDER.create(optCluster, schemaMock);
StatsSetupConst.setStatsStateForCreateTable(tableParams, Lists.newArrayList("_int"), StatsSetupConst.TRUE);
tableParams.put(StatsSetupConst.ROW_COUNT, "3");
}
代码示例来源:origin: apache/hive
@Before
public void before() {
HepProgramBuilder programBuilder = new HepProgramBuilder();
programBuilder.addRuleInstance(new HivePointLookupOptimizerRule.FilterCondition(2));
planner = new HepPlanner(programBuilder.build());
JavaTypeFactoryImpl typeFactory = new JavaTypeFactoryImpl();
RexBuilder rexBuilder = new RexBuilder(typeFactory);
final RelOptCluster optCluster = RelOptCluster.create(planner, rexBuilder);
RelDataType rowTypeMock = typeFactory.createStructType(MyRecord.class);
Mockito.doReturn(rowTypeMock).when(tableMock).getRowType();
Mockito.doReturn(tableMock).when(schemaMock).getTableForMember(Matchers.any());
Mockito.doReturn(hiveTableMDMock).when(tableMock).getHiveTableMD();
builder = HiveRelFactories.HIVE_BUILDER.create(optCluster, schemaMock);
}
代码示例来源:origin: apache/drill
private static RelNode createTableScan(Table viewTable) {
final RexBuilder rexBuilder = new RexBuilder(new JavaTypeFactoryImpl());
final RelOptCluster cluster = RelOptCluster.create(planner, rexBuilder);
代码示例来源:origin: apache/hive
RexBuilder rexBuilder = new RexBuilder(new JavaTypeFactoryImpl());
RelOptCluster cluster = RelOptCluster.create(planner, rexBuilder);
代码示例来源:origin: apache/hive
@Test
public void testCBOMaxNumToCNF1() {
// OR(=($0, 1), AND(=($0, 0), =($1, 8)))
// transformation creates 7 nodes AND(OR(=($0, 1), =($0, 0)), OR(=($0, 1), =($1, 8)))
// thus, it is triggered
final RelDataTypeFactory typeFactory = new JavaTypeFactoryImpl();
final RexBuilder rexBuilder = new RexBuilder(typeFactory);
final RexNode cond = rexBuilder.makeCall(SqlStdOperatorTable.OR,
rexBuilder.makeCall(SqlStdOperatorTable.EQUALS,
rexBuilder.makeInputRef(typeFactory.createSqlType(SqlTypeName.INTEGER), 0),
rexBuilder.makeLiteral(1, typeFactory.createSqlType(SqlTypeName.INTEGER), false)),
rexBuilder.makeCall(SqlStdOperatorTable.AND,
rexBuilder.makeCall(SqlStdOperatorTable.EQUALS,
rexBuilder.makeInputRef(typeFactory.createSqlType(SqlTypeName.INTEGER), 0),
rexBuilder.makeLiteral(0, typeFactory.createSqlType(SqlTypeName.INTEGER), false)),
rexBuilder.makeCall(SqlStdOperatorTable.EQUALS,
rexBuilder.makeInputRef(typeFactory.createSqlType(SqlTypeName.INTEGER), 1),
rexBuilder.makeLiteral(8, typeFactory.createSqlType(SqlTypeName.INTEGER), false))));
final RexNode newCond = RexUtil.toCnf(rexBuilder, maxNumNodesCNF, cond);
assertEquals(newCond.toString(), "AND(OR(=($0, 1), =($0, 0)), OR(=($0, 1), =($1, 8)))");
}
代码示例来源:origin: apache/hive
@Test
public void testCBOMaxNumToCNF2() {
// OR(=($0, 1), =($0, 2), AND(=($0, 0), =($1, 8)))
// transformation creates 9 nodes AND(OR(=($0, 1), =($0, 2), =($0, 0)), OR(=($0, 1), =($0, 2), =($1, 8)))
// thus, it is NOT triggered
final RelDataTypeFactory typeFactory = new JavaTypeFactoryImpl();
final RexBuilder rexBuilder = new RexBuilder(typeFactory);
final RexNode cond = rexBuilder.makeCall(SqlStdOperatorTable.OR,
rexBuilder.makeCall(SqlStdOperatorTable.EQUALS,
rexBuilder.makeInputRef(typeFactory.createSqlType(SqlTypeName.INTEGER), 0),
rexBuilder.makeLiteral(1, typeFactory.createSqlType(SqlTypeName.INTEGER), false)),
rexBuilder.makeCall(SqlStdOperatorTable.EQUALS,
rexBuilder.makeInputRef(typeFactory.createSqlType(SqlTypeName.INTEGER), 0),
rexBuilder.makeLiteral(2, typeFactory.createSqlType(SqlTypeName.INTEGER), false)),
rexBuilder.makeCall(SqlStdOperatorTable.AND,
rexBuilder.makeCall(SqlStdOperatorTable.EQUALS,
rexBuilder.makeInputRef(typeFactory.createSqlType(SqlTypeName.INTEGER), 0),
rexBuilder.makeLiteral(0, typeFactory.createSqlType(SqlTypeName.INTEGER), false)),
rexBuilder.makeCall(SqlStdOperatorTable.EQUALS,
rexBuilder.makeInputRef(typeFactory.createSqlType(SqlTypeName.INTEGER), 1),
rexBuilder.makeLiteral(8, typeFactory.createSqlType(SqlTypeName.INTEGER), false))));
final RexNode newCond = RexUtil.toCnf(rexBuilder, maxNumNodesCNF, cond);
assertEquals(newCond.toString(), "OR(=($0, 1), =($0, 2), AND(=($0, 0), =($1, 8)))");
}
代码示例来源:origin: hortonworks/streamline
public RelNodeCompiler(PrintWriter pw, JavaTypeFactory typeFactory) {
this.pw = pw;
this.typeFactory = typeFactory;
this.rexCompiler = new RexNodeToJavaCodeCompiler(new RexBuilder(typeFactory));
}
代码示例来源:origin: org.apache.calcite/calcite-core
/** Creates a translator for translating aggregate functions. */
public static RexToLixTranslator forAggregation(JavaTypeFactory typeFactory,
BlockBuilder list, InputGetter inputGetter, SqlConformance conformance) {
final ParameterExpression root = DataContext.ROOT;
return new RexToLixTranslator(null, typeFactory, root, inputGetter, list,
Collections.emptyMap(), new RexBuilder(typeFactory), conformance, null,
null);
}
代码示例来源:origin: Qihoo360/Quicksql
/** Creates a translator for translating aggregate functions. */
public static RexToLixTranslator forAggregation(JavaTypeFactory typeFactory,
BlockBuilder list, InputGetter inputGetter, SqlConformance conformance) {
final ParameterExpression root = DataContext.ROOT;
return new RexToLixTranslator(null, typeFactory, root, inputGetter, list,
Collections.emptyMap(), new RexBuilder(typeFactory), conformance, null,
null);
}
代码示例来源:origin: org.apache.calcite/calcite-core
static RelOptCluster newCluster(VolcanoPlanner planner) {
final RelDataTypeFactory typeFactory =
new SqlTypeFactoryImpl(org.apache.calcite.rel.type.RelDataTypeSystem.DEFAULT);
return RelOptCluster.create(planner, new RexBuilder(typeFactory));
}
代码示例来源:origin: Qihoo360/Quicksql
static RelOptCluster newCluster(VolcanoPlanner planner) {
final RelDataTypeFactory typeFactory =
new SqlTypeFactoryImpl(org.apache.calcite.rel.type.RelDataTypeSystem.DEFAULT);
return RelOptCluster.create(planner, new RexBuilder(typeFactory));
}
代码示例来源:origin: Qihoo360/Quicksql
@Before
public void setUp() {
JavaTypeFactory typeFactory = new JavaTypeFactoryImpl(RelDataTypeSystem.DEFAULT);
integerDataType = typeFactory.createSqlType(SqlTypeName.INTEGER);
integerType = SqlTypeUtil.convertTypeToSpec(integerDataType);
rexBuilder = new RexBuilder(typeFactory);
}
代码示例来源:origin: Qihoo360/Quicksql
/** Test case for
* <a href="https://issues.apache.org/jira/browse/CALCITE-2306">[CALCITE-2306]
* AssertionError in {@link RexLiteral#getValue3} with null literal of type
* DECIMAL</a>. */
@Test public void testDecimalLiteral() {
final RelDataTypeFactory typeFactory =
new SqlTypeFactoryImpl(RelDataTypeSystem.DEFAULT);
final RelDataType type = typeFactory.createSqlType(SqlTypeName.DECIMAL);
final RexBuilder builder = new RexBuilder(typeFactory);
final RexLiteral literal = builder.makeExactLiteral(null, type);
assertThat(literal.getValue3(), nullValue());
}
代码示例来源:origin: org.apache.calcite/calcite-core
/** Test case for
* <a href="https://issues.apache.org/jira/browse/CALCITE-2306">[CALCITE-2306]
* AssertionError in {@link RexLiteral#getValue3} with null literal of type
* DECIMAL</a>. */
@Test public void testDecimalLiteral() {
final RelDataTypeFactory typeFactory =
new SqlTypeFactoryImpl(RelDataTypeSystem.DEFAULT);
final RelDataType type = typeFactory.createSqlType(SqlTypeName.DECIMAL);
final RexBuilder builder = new RexBuilder(typeFactory);
final RexLiteral literal = builder.makeExactLiteral(null, type);
assertThat(literal.getValue3(), nullValue());
}
代码示例来源:origin: dremio/dremio-oss
private void checkCancelFlag(RelOptPlanner planner) {
expectedException.expect(UserException.class);
RelOptCluster cluster = RelOptCluster.create(planner, new RexBuilder(SqlTypeFactoryImpl.INSTANCE));
RelNode root = new NoneRel(cluster);
planner.setRoot(root);
planner.findBestExp();
}
代码示例来源:origin: Qihoo360/Quicksql
/**
* Test RexBuilder.ensureType()
*/
@Test
public void testEnsureTypeWithItself() {
final RelDataTypeFactory typeFactory = new SqlTypeFactoryImpl(RelDataTypeSystem.DEFAULT);
RexBuilder builder = new RexBuilder(typeFactory);
RexNode node = new RexLiteral(
Boolean.TRUE, typeFactory.createSqlType(SqlTypeName.BOOLEAN), SqlTypeName.BOOLEAN);
RexNode ensuredNode = builder.ensureType(
typeFactory.createSqlType(SqlTypeName.BOOLEAN), node, true);
assertEquals(node, ensuredNode);
}
代码示例来源:origin: org.apache.calcite/calcite-core
/**
* Test RexBuilder.ensureType()
*/
@Test
public void testEnsureTypeWithAny() {
final RelDataTypeFactory typeFactory = new SqlTypeFactoryImpl(RelDataTypeSystem.DEFAULT);
RexBuilder builder = new RexBuilder(typeFactory);
RexNode node = new RexLiteral(
Boolean.TRUE, typeFactory.createSqlType(SqlTypeName.BOOLEAN), SqlTypeName.BOOLEAN);
RexNode ensuredNode = builder.ensureType(
typeFactory.createSqlType(SqlTypeName.ANY), node, true);
assertEquals(node, ensuredNode);
}
内容来源于网络,如有侵权,请联系作者删除!