[
https://issues.apache.org/jira/browse/DRILL-5457?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16030513#comment-16030513
]
ASF GitHub Bot commented on DRILL-5457:
---------------------------------------
Github user Ben-Zvi commented on a diff in the pull request:
https://github.com/apache/drill/pull/822#discussion_r119258769
--- Diff:
exec/java-exec/src/main/java/org/apache/drill/exec/physical/impl/aggregate/HashAggTemplate.java
---
@@ -230,15 +452,35 @@ public void setup(HashAggregate hashAggrConfig,
HashTableConfig htConfig, Fragme
throw new IllegalArgumentException("Wrong number of workspace
variables.");
}
-// this.context = context;
+ this.context = context;
this.stats = stats;
- this.allocator = allocator;
+ this.allocator = oContext.getAllocator();
+ this.oContext = oContext;
this.incoming = incoming;
-// this.schema = incoming.getSchema();
this.outgoing = outgoing;
this.outContainer = outContainer;
+ this.operatorId = hashAggrConfig.getOperatorId();
+
+ is2ndPhase = hashAggrConfig.getAggPhase() ==
AggPrelBase.OperatorPhase.PHASE_2of2;
+ isTwoPhase = hashAggrConfig.getAggPhase() !=
AggPrelBase.OperatorPhase.PHASE_1of1;
+ canSpill = isTwoPhase; // single phase can not spill
--- End diff --
Three booleans is 2^3 ( == 8), and this space is sparse as there are
dependencies (e.g. Single phase can not spill, and has no 1st/2nd).
Those booleans are used only in a couple of places in the code to make a
logical difference, hence it'll be an overkill to subclass based on these
changes. They are used in many other places for logging messages ....
> Support Spill to Disk for the Hash Aggregate Operator
> -----------------------------------------------------
>
> Key: DRILL-5457
> URL: https://issues.apache.org/jira/browse/DRILL-5457
> Project: Apache Drill
> Issue Type: Improvement
> Components: Execution - Relational Operators
> Affects Versions: 1.10.0
> Reporter: Boaz Ben-Zvi
> Assignee: Boaz Ben-Zvi
> Fix For: 1.11.0
>
>
> Support gradual spilling memory to disk as the available memory gets too
> small to allow in memory work for the Hash Aggregate Operator.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)