@Override public OptionValue load(String key) { return delegate.getOption(key); } });
@Override public void deleteOption(final String name, final OptionType type) { fallback.getValidator(name); // ensure the option exists // fallback if unable to delete locally if (!deleteLocalOption(name, type)) { fallback.deleteOption(name, type); } }
@Override public void deleteAllOptions(final OptionType type) { // fallback if unable to delete locally if (!deleteAllLocalOptions(type)) { fallback.deleteAllOptions(type); } }
@Override public void applyOptions(OptionManager manager) { if (enableLeafLimits) { manager.setOption(createBoolean(QUERY, PlannerSettings.ENABLE_LEAF_LIMITS.getOptionName(), true)); manager.setOption(createLong(QUERY, ExecConstants.MAX_WIDTH_GLOBAL_KEY, manager.getOption(PlannerSettings.LEAF_LIMIT_MAX_WIDTH))); manager.setOption(createLong(QUERY, ExecConstants.SLICE_TARGET, 1)); } if (enableOutputLimits) { manager.setOption(createBoolean(QUERY, PlannerSettings.ENABLE_OUTPUT_LIMITS.getOptionName(), true)); } // always store results manager.setOption(createString(QUERY, PlannerSettings.STORE_QUERY_RESULTS.getOptionName(), StoreQueryResultsPolicy.PATH_AND_ATTEMPT_ID.name())); manager.setOption(createString(QUERY, PlannerSettings.QUERY_RESULTS_STORE_TABLE.getOptionName(), queryResultsStorePath)); if (!allowPartitionPruning) { manager.setOption(createBoolean(QUERY, PlannerSettings.ENABLE_PARTITION_PRUNING.getOptionName(), false)); } if (internalSingleThreaded) { manager.setOption(createBoolean(QUERY, ExecConstants.SORT_FILE_BLOCKS.getOptionName(), true)); manager.setOption(createBoolean(QUERY, PlannerSettings.EXCHANGE.getOptionName(), true)); } }
@Override public void applyOptions(OptionManager manager) { if (optionProvider != null) { optionProvider.applyOptions(manager); } // TODO(DX-5912): disable hash join after merge join is implemented // manager.setOption(OptionValue.createBoolean(OptionValue.OptionType.QUERY, // PlannerSettings.HASHJOIN.getOptionName(), false)); manager.setOption(OptionValue.createBoolean(OptionValue.OptionType.QUERY, PlannerSettings.HASHAGG.getOptionName(), false)); } }
options.setOption(optionValue); } else { // RESET option if ("ALL".equalsIgnoreCase(name)) { session.setDefaultSchemaPath(null); options.deleteAllOptions(type); } else { options.deleteOption(name, type);
testContext.getOptions().setOption(OptionValue.createBoolean(OptionType.SYSTEM, ExecConstants.FAST_OR_ENABLE.getOptionName(), false)); testFunction(expr, ObjectArrays.concat(objects, result)); } catch(Throwable t) { throw t; } finally { testContext.getOptions().deleteOption(ExecConstants.FAST_OR_ENABLE.getOptionName(), OptionType.SYSTEM); testContext.getOptions().setOption(OptionValue.createString(OptionType.SYSTEM, ExecConstants.QUERY_EXEC_OPTION.getOptionName(), SupportedEngines.CodeGenOption.Java.name())); InExpression.COUNT.set(0); try { } finally { InExpression.COUNT.set(0); testContext.getOptions().deleteOption(ExecConstants.QUERY_EXEC_OPTION.getOptionName(), OptionType.SYSTEM);
@Override public void setOption(OptionValue value) { final OptionValidator validator = fallback.getValidator(value.getName()); validator.validate(value); // validate the option // fallback if unable to set locally if (!setLocalOption(value)) { fallback.setOption(value); } }
@Override public OptionList getOptionList() { OptionList list = super.getOptionList(); list.merge(fallback.getOptionList()); return list; }
public AutoCloseable with(final BooleanValidator validator, final boolean value){ final boolean oldValue = testContext.getOptions().getOption(validator); testContext.getOptions().setOption(OptionValue.createBoolean(OptionType.SYSTEM, validator.getOptionName(), value)); return new AutoCloseable(){ @Override public void close() throws Exception { testContext.getOptions().setOption(OptionValue.createBoolean(OptionType.SYSTEM, validator.getOptionName(), oldValue)); }}; }
@BeforeClass public static void setUpTestNative() { if (System.getProperty("execPreferenceGandivaOnly") != null) { execPreferenceGandivaOnly = System.getProperty("execPreferenceGandivaOnly"); } testContext.getOptions().setOption(OptionValue.createString( OptionValue.OptionType.SYSTEM, ExecConstants.QUERY_EXEC_OPTION_KEY, execPreferenceGandivaOnly)); }
/** * Return the list of all non-default options including QUERY, SESSION and SYSTEM level * @return */ public OptionList getNonDefaultOptions() { final OptionList nonDefaultOptions = queryOptions.getOptionList(); nonDefaultOptions.mergeIfNotPresent(sabotContext.getOptionManager().getNonDefaultOptions()); return nonDefaultOptions; }
public int getNewMethodThreshold() { return (int) optionManager.getOption(ExecConstants.CODE_GEN_NESTED_METHOD_THRESHOLD); } }
public AutoCloseable with(final LongValidator validator, final long value){ final long oldValue = testContext.getOptions().getOption(validator); testContext.getOptions().setOption(OptionValue.createLong(OptionType.SYSTEM, validator.getOptionName(), value)); return new AutoCloseable(){ @Override public void close() throws Exception { testContext.getOptions().setOption(OptionValue.createLong(OptionType.SYSTEM, validator.getOptionName(), oldValue)); }}; }
@Override public void close() throws Exception { testContext.getOptions().setOption(OptionValue.createString(OptionType.SYSTEM, validator.getOptionName(), oldValue)); }}; }
public static PhysicalPlan convertToPlan(SqlHandlerConfig config, PhysicalOperator op) { PlanPropertiesBuilder propsBuilder = PlanProperties.builder(); propsBuilder.type(PlanType.PHYSICAL); propsBuilder.version(1); propsBuilder.options(new JSONOptions(config.getContext().getOptions().getOptionList())); propsBuilder.resultMode(ResultMode.EXEC); propsBuilder.generator("default", "handler"); List<PhysicalOperator> ops = Lists.newArrayList(); PopCollector c = new PopCollector(); op.accept(c, ops); return new PhysicalPlan(propsBuilder.build(), ops); }
@Override public double getMemoryFactor(OptionManager options) { return options.getOption(AGG_FACTOR); }
public AutoCloseable with(final StringValidator validator, final String value){ final String oldValue = testContext.getOptions().getOption(validator); testContext.getOptions().setOption(OptionValue.createString(OptionType.SYSTEM, validator.getOptionName(), value)); return new AutoCloseable(){ @Override public void close() throws Exception { testContext.getOptions().setOption(OptionValue.createString(OptionType.SYSTEM, validator.getOptionName(), oldValue)); }}; }
@Override public void close() throws Exception { testContext.getOptions().setOption(OptionValue.createDouble(OptionType.SYSTEM, validator.getOptionName(), oldValue)); }}; }
@Override public double getMemoryFactor(OptionManager options) { return options.getOption(SORT_FACTOR); }