phoenix-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Hudson (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (PHOENIX-2470) Skip overlapped scan left after StaleRegionBoundaryCacheException
Date Mon, 21 Dec 2015 04:21:46 GMT

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

Hudson commented on PHOENIX-2470:
---------------------------------

SUCCESS: Integrated in Phoenix-master #1029 (See [https://builds.apache.org/job/Phoenix-master/1029/])
PHOENIX-2470 Skip overlapped scan left after (rajeshbabu: rev 5d485faefcfdb6ce567941385c1f79b679e67933)
* phoenix-core/src/main/java/org/apache/phoenix/iterate/BaseResultIterators.java


> Skip overlapped scan left after StaleRegionBoundaryCacheException
> -----------------------------------------------------------------
>
>                 Key: PHOENIX-2470
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-2470
>             Project: Phoenix
>          Issue Type: Bug
>            Reporter: Ankit Singhal
>            Assignee: Ankit Singhal
>             Fix For: 4.7.0
>
>         Attachments: PHOENIX-2470.patch, PHOENIX-2470_v1_rebased.patch
>
>
> We should skip the stale scanners because of two reasons:-
> 1. For local indexing , they can generate duplicate result if the compaction didn't complete
for the merged region.
> 2. Stale scanners which may result empty but may impact performance.
> For eg:- skipping scanners which has overlap with the previous succesfull scanner
> In BaseResultIterators.java 
> {code}
> +                        if (isLocalIndex && previousScan != null
> +                                && ((!isReverse && Bytes.compareTo(scanPair.getFirst().getStartRow(),
> +                                        previousScan.getStopRow()) < 0)
> +                                || (isReverse && Bytes.compareTo(scanPair.getFirst().getStartRow(),
> +                                        previousScan.getStopRow()) > 0)
> +                                || (scanPair.getFirst().getAttribute(EXPECTED_UPPER_REGION_KEY)
!= null
> +                                        && previousScan.getAttribute(EXPECTED_UPPER_REGION_KEY)
!= null
> +                                        && Bytes.compareTo(scanPair.getFirst().getAttribute(EXPECTED_UPPER_REGION_KEY),
> +                                                previousScan.getAttribute(EXPECTED_UPPER_REGION_KEY))
== 0))) {
> +
> +                            continue;
>                          }
> {code}



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

Mime
View raw message