[
https://issues.apache.org/jira/browse/TAJO-42?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Hyunsik Choi updated TAJO-42:
-----------------------------
Attachment: TAJO-42.patch
SubQuery has two roles for a FSM and a execution block representation. This
patch separates them and cleans up SubQuery. As a result, this patch improves
the readability and modularization of SubQuery.
In more detail, this patch does as follows:
* Implement ExecutionBlock that represents a part of distributed execution plan.
* Move some member variables and methods in SubQuery to ExecutionBlock.
* Rename SubQuery.PARTITION_TYPE to PartitionType.
* Move SubQuery.PartitionType to ExecutionBlock.
* Implement ExecutionBlockCursor, a pointer of an ExecutionBlock that the query
engine should execute.
* Replace a schedule queue and its related code with ExecutionBlockCursor
* As a result, Query class becomes simpler.
* Move GlobalPlanner::setPartitionNumberForTwoPhase to Repartitioner.
* other code clean-up
All unit tests are passed, but sometimes some query is getting hanged during
unit test. I'm suspecting that this problem is caused by RMContainerAllocator.
I have a plan to cleanup RMContainerAllocator and RMCommunicator by adopting
AMRMClient. With this issue, I'll dig this hanging problem.
> Divide SubQuery into FSM and execution block parts
> --------------------------------------------------
>
> Key: TAJO-42
> URL: https://issues.apache.org/jira/browse/TAJO-42
> Project: Tajo
> Issue Type: Improvement
> Reporter: Hyunsik Choi
> Assignee: Hyunsik Choi
> Labels: DAG
> Fix For: 0.2-incubating
>
> Attachments: TAJO-42.patch
>
>
> SubQuery plays two roles, which are a finite state machine and a unit to
> represent a part of a distributed direct acyclic graph. So, its design and
> code are somewhat ugly.
> The issue is for dividing SubQuery into two parts, a FSM for a subquery and
> an execution block representation.
> This issue would be the first step to improve Tajo's DAG framework.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira