/** Adds a property hook. */ public <V> AssertQuery withProperty(Hook hook, V value) { return withHook(hook, Hook.propertyJ(value)); }
/** Adds a property hook. */ public <V> AssertQuery withProperty(Hook hook, V value) { return withHook(hook, Hook.propertyJ(value)); }
public <V> Sql withProperty(Hook hook, V value) { return withHook(hook, Hook.propertyJ(value)); }
public <V> Sql withProperty(Hook hook, V value) { return withHook(hook, Hook.propertyJ(value)); }
@Test public <T> void testReduceCaseNullabilityChange() throws Exception { HepProgram program = new HepProgramBuilder() .addRuleInstance(ReduceExpressionsRule.FILTER_INSTANCE) .addRuleInstance(ReduceExpressionsRule.PROJECT_INSTANCE) .build(); try (Hook.Closeable a = Hook.REL_BUILDER_SIMPLIFY.add(Hook.propertyJ(false))) { checkPlanning(program, "select case when empno = 1 then 1 when 1 IS NOT NULL then 2 else null end as qx " + "from emp"); } }
final boolean b = value instanceof Boolean && (Boolean) value; closer.add(Hook.ENABLE_BINDABLE.addThread(Hook.propertyJ(b)));
final boolean b = value instanceof Boolean && (Boolean) value; closer.add(Hook.ENABLE_BINDABLE.addThread(Hook.propertyJ(b)));
public RelRoot toRel(final SqlNode validatedNode) { if (planner == null) { planner = new VolcanoPlanner(costFactory, settings); planner.setExecutor(new DrillConstExecutor(functions, util, settings)); planner.clearRelTraitDefs(); planner.addRelTraitDef(ConventionTraitDef.INSTANCE); planner.addRelTraitDef(DrillDistributionTraitDef.INSTANCE); planner.addRelTraitDef(RelCollationTraitDef.INSTANCE); } if (cluster == null) { initCluster(); } final SqlToRelConverter sqlToRelConverter = new SqlToRelConverter(new Expander(), validator, catalog, cluster, DrillConvertletTable.INSTANCE, sqlToRelConverterConfig); /* * Sets value to false to avoid simplifying project expressions * during creating new projects since it may cause changing data mode * which causes to assertion errors during type validation */ Hook.REL_BUILDER_SIMPLIFY.add(Hook.propertyJ(false)); //To avoid unexpected column errors set a value of top to false final RelRoot rel = sqlToRelConverter.convertQuery(validatedNode, false, false); return rel.withRel(sqlToRelConverter.flattenTypes(rel.rel, true)); }