[ 
https://issues.apache.org/jira/browse/HBASE-19732?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

ramkrishna.s.vasudevan updated HBASE-19732:
-------------------------------------------
    Status: Open  (was: Patch Available)

> Replica regions does not return back the MSLAB chunks to pool
> -------------------------------------------------------------
>
>                 Key: HBASE-19732
>                 URL: https://issues.apache.org/jira/browse/HBASE-19732
>             Project: HBase
>          Issue Type: Bug
>    Affects Versions: 2.0.0-alpha-4
>            Reporter: ramkrishna.s.vasudevan
>            Assignee: ramkrishna.s.vasudevan
>            Priority: Critical
>             Fix For: 2.0.0-beta-2
>
>         Attachments: HBASE-19732.patch, HBASE-19732_1.patch
>
>
> When we have region replica enabled, we try to replicate the flush markers. 
> In the replica region on receiving the FLUSH_START_MARKER we create a 
> snapshot. On receiving COMMIT_FLUSH_MARKER we just update the store files and 
> clear the snapshot. But in the recent trunk code while creating snapshot 
> (need to verify in other  branches too)
> {code}
>     this.timeRangeTracker = snapshot.getTimeRangeTracker();
>     this.scanners = snapshot.getScanners(Long.MAX_VALUE, Long.MAX_VALUE);
>     this.tagsPresent = snapshot.isTagsPresent();
> {code}
> The scanners that we create internally increment the openScannerCount per 
> MSLAB. But since in this case we don't call scanner.close() we don't 
> decrement the scanner count and so the MSLAB chunks are not returned back to 
> the pool when the snapshot is closed in the replica region.
> {code}
> int count  = openScannerCount.get();
>     LOG.info("the count is "+count);
>     if(count == 0) {
>       recycleChunks();
> {code}
> This is a critical bug. 



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to