[ 
https://issues.apache.org/jira/browse/PHOENIX-5793?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17065532#comment-17065532
 ] 

chenglei commented on PHOENIX-5793:
-----------------------------------

Some suggesions:
# The code in your while loop is somewhat complex, you may use 
{{ExecutorCompletionService}} to simplify your logic.
# You may not use the public 
{{context.getConnection().getQueryServices().getExecutor()}} thread pool, just 
two threads, a private    threadpool is enough.
# You would better add tests for your {{fast null return}} cases.

> Support parallel init and fast null return for SortMergeJoinPlan.
> -----------------------------------------------------------------
>
>                 Key: PHOENIX-5793
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-5793
>             Project: Phoenix
>          Issue Type: Improvement
>            Reporter: Chen Feng
>            Assignee: Chen Feng
>            Priority: Minor
>         Attachments: PHOENIX-5793-v2.patch, PHOENIX-5793-v3.patch
>
>
> For a join sql like A join B. The implementation of SortMergeJoinPlan 
> currently inits the two iterators A and B one by one.
> By initializing A and B in parallel, we can improve performance in two 
> aspects.
> 1) By overlapping the time in initializing.
> 2) If one child query is null, the other child query can be canceled since 
> the final result must be null.
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to