Github user paul-rogers commented on a diff in the pull request:
https://github.com/apache/drill/pull/822#discussion_r117103383
--- Diff:
exec/java-exec/src/main/java/org/apache/drill/exec/ExecConstants.java ---
@@ -86,6 +92,19 @@
BooleanValidator EXTERNAL_SORT_DISABLE_MANAGED_OPTION = new
BooleanValidator("exec.sort.disable_managed", false);
+ // Hash Aggregate Options
+
+ String HASHAGG_NUM_PARTITIONS_KEY = "drill.exec.hashagg.num_partitions";
+ LongValidator HASHAGG_NUM_PARTITIONS = new
RangeLongValidator("exec.hashagg.num_partitions", 1, 128, 32); // 1 means - no
spilling
+ String HASHAGG_MAX_MEMORY_KEY = "drill.exec.hashagg.mem_limit";
+ LongValidator HASHAGG_MAX_MEMORY = new
RangeLongValidator("exec.hashagg.mem_limit", 0, Integer.MAX_VALUE, 0);
+ // min batches is used for tuning (each partition needs so many batches
when planning the number of partitions,
+ // or reserve this number when calculating whether the remaining
available memory is too small and requires a spill.)
+ // Low value may OOM (e.g., when incoming rows become wider), higher
values use fewer partitions but are safer
+ String HASHAGG_MIN_BATCHES_PER_PARTITION_KEY =
"drill.exec.hashagg.min_batches_per_partition";
+ LongValidator HASHAGG_MIN_BATCHES_PER_PARTITION = new
RangeLongValidator("exec.hashagg.min_batches_per_partition", 2, 5, 3);
+ String HASHAGG_SPILL_DIRS = "drill.exec.hashagg.spill.directories";
--- End diff --
Maybe label which are config options and which session/system options.
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---