1 package com.mapd.parser.hint;
3 import org.apache.calcite.rel.hint.HintPredicates;
4 import org.apache.calcite.rel.hint.HintStrategyTable;
6 import java.util.ArrayList;
16 ArrayList<String> supportedHints =
new ArrayList<String>();
17 supportedHints.add(
"cpu_mode");
18 supportedHints.add(
"columnar_output");
19 supportedHints.add(
"rowwise_output");
20 supportedHints.add(
"overlaps_bucket_threshold");
21 supportedHints.add(
"overlaps_max_size");
22 supportedHints.add(
"overlaps_allow_gpu_build");
23 supportedHints.add(
"overlaps_no_cache");
24 supportedHints.add(
"overlaps_keys_per_bin");
25 supportedHints.add(
"keep_result");
26 supportedHints.add(
"keep_table_function_result");
27 supportedHints.add(
"aggregate_tree_fanout");
28 supportedHints.add(
"cuda_block_size");
29 supportedHints.add(
"cuda_grid_size_multiplier");
30 supportedHints.add(
"cuda_opt_block_and_grid_sizes");
31 supportedHints.add(
"watchdog");
32 supportedHints.add(
"dynamic_watchdog");
33 supportedHints.add(
"watchdog_off");
34 supportedHints.add(
"dynamic_watchdog_off");
35 supportedHints.add(
"query_time_limit");
36 supportedHints.add(
"allow_loop_join");
37 supportedHints.add(
"disable_loop_join");
38 supportedHints.add(
"loop_join_inner_table_max_num_rows");
39 supportedHints.add(
"max_join_hashtable_size");
41 for (String hint_name : supportedHints) {
43 builder = builder.hintStrategy(hint_name, HintPredicates.SET_VAR);
44 String globalHintName =
"g_".concat(hint_name);
45 builder = builder.hintStrategy(globalHintName, HintPredicates.SET_VAR);
47 return builder.build();
static final HintStrategyTable HINT_STRATEGY_TABLE
static HintStrategyTable createHintStrategies()
static HintStrategyTable createHintStrategies(HintStrategyTable.Builder builder)