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

Ted Yu commented on HBASE-8420:
-------------------------------

bq. So, no matter what the cancel returns, as long as we deduct 
prefetchedResultSize, it will be good.
Looking at 
http://javasourcecode.org/html/open-source/jdk/jdk-6u23/java/util/concurrent/Future.java.html
 , starting line 73.
{code}
     * @param mayInterruptIfRunning <tt>true</tt> if the thread executing this
     * task should be interrupted; otherwise, in-progress tasks are allowed
     * to complete
{code}
Since false is passed to cancel(), by the time we reach:
{code}
+      if (prefetchedResultSize > 0) {
{code}
prefetchedResultSize may be 0 (yet to be filled by the running thread). We 
would miss the upcoming assignment to prefetchedResultSize.
                
> Port  HBASE-6874  Implement prefetching for scanners from 0.89-fb
> -----------------------------------------------------------------
>
>                 Key: HBASE-8420
>                 URL: https://issues.apache.org/jira/browse/HBASE-8420
>             Project: HBase
>          Issue Type: Improvement
>            Reporter: Jimmy Xiang
>            Assignee: Jimmy Xiang
>         Attachments: 0.94-8420_v1.patch, 0.94-8420_v2.patch, 
> trunk-8420_v1.patch, trunk-8420_v2.patch, trunk-8420_v3.patch, 
> trunk-8420_v4.patch, trunk-8420_v5.1.patch, trunk-8420_v5.patch, 
> trunk-8420_v6.patch
>
>
> This should help scanner performance.  We should have it in trunk.

--
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

Reply via email to