hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "stack (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-19732) Replica regions does not return back the MSLAB chunks to pool
Date Tue, 09 Jan 2018 00:54:00 GMT

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

stack commented on HBASE-19732:

We are in the following replica. Why we have to close out the memstore snapshot? It won't
have a snapshot because it a replica? Thanks [~ram_krish]. This have to be in beta-1?

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

View raw message