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

James Taylor commented on PHOENIX-2714:
---------------------------------------

[~maryannxue] - how about a simpler patch with just the correction of the 
estimates bytes (i.e. check for null scan and taking into account that a point 
lookup returns a single row)?

> Correct byte estimate in BaseResultIterators and expose as interface
> --------------------------------------------------------------------
>
>                 Key: PHOENIX-2714
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-2714
>             Project: Phoenix
>          Issue Type: Bug
>    Affects Versions: 4.7.0
>            Reporter: Maryann Xue
>            Assignee: Maryann Xue
>              Labels: statistics
>             Fix For: 4.8.0
>
>         Attachments: PHOENIX-2714.patch
>
>
> The bytes are accumulated even if the range intersect is empty (produces a 
> null scan).
> {code}
>                 while (guideIndex < gpsSize && 
> (currentGuidePost.compareTo(endKey) <= 0 || endKey.length == 0)) {
>                     Scan newScan = scanRanges.intersectScan(scan, 
> currentKeyBytes, currentGuidePostBytes, keyOffset,
>                             false);
>                     estimatedRows += gps.getRowCounts().get(guideIndex);
>                     estimatedSize += gps.getByteCounts().get(guideIndex);
>                     scans = addNewScan(parallelScans, scans, newScan, 
> currentGuidePostBytes, false, regionLocation);
>                     currentKeyBytes = currentGuidePost.copyBytes();
>                     currentGuidePost = PrefixByteCodec.decode(decoder, input);
>                     currentGuidePostBytes = currentGuidePost.copyBytes();
>                     guideIndex++;
>                 }
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to