Github user jianqiao commented on the issue:

    https://github.com/apache/incubator-quickstep/pull/179
  
    For the question about `PartitionedHashTablePool` and `HashTablePool`. Note 
that their use patterns are different so perhaps it is not natural to merge 
them into one class.
    
    `PartitionedHashTablePool` creates **a fixed number** of hash tables **on 
its construction**. The use pattern is that every `AggregationWorkOrder` 
updates **all** of these hash tables and every `FinalizeAggregationWorkOrder` 
updates one of these hash tables.
    
    `HashTablePool` creates hash tables **on demand**. The current use pattern 
is that every `AggregationWorkOrder` checkouts **exclusively** one hash table, 
updates the hash table, and returns the hash table back to the pool. Then only 
one `FinalizeAggregationWorkOrder` is created to merge all the tables in the 
pool to the final hash table.


---
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 infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

Reply via email to