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

Chia-Ping Tsai commented on HBASE-18019:
----------------------------------------

bq.  If the store is being flushed when we create the scanner, then after flush 
the snapshot is gone but we still need to scan the memstore?
The new hfiles is added before the snapshot is gone, so we can get data from 
the new hfiles even if the snapshot is gone.

> Clear redundant memstore scanners
> ---------------------------------
>
>                 Key: HBASE-18019
>                 URL: https://issues.apache.org/jira/browse/HBASE-18019
>             Project: HBase
>          Issue Type: Improvement
>    Affects Versions: 2.0.0
>            Reporter: Chia-Ping Tsai
>            Assignee: Chia-Ping Tsai
>             Fix For: 2.0.0
>
>         Attachments: HBASE-18019.v0.patch
>
>
> The HBASE-17655 remove the MemStoreScanner and it causes that the 
> MemStore#getScanner(readpt) returns multi KeyValueScanner which consist of 
> active, snapshot and pipeline. But StoreScanner only remove one mem scanner 
> when refreshing current scanners.
> {code}
>     for (int i = 0; i < currentScanners.size(); i++) {
>       if (!currentScanners.get(i).isFileScanner()) {
>         currentScanners.remove(i);
>         break;
>       }
>     }
> {code}
> The older scanners kept in the StoreScanner will hinder GC from releasing 
> memory and lead to multiple scans on the same data.
>  



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to