[jira] [Updated] (HBASE-19732) Replica regions does not return back the MSLAB chunks to pool
[ https://issues.apache.org/jira/browse/HBASE-19732?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] ramkrishna.s.vasudevan updated HBASE-19732: --- Resolution: Fixed Hadoop Flags: Reviewed Status: Resolved (was: Patch Available) Forgot committing this. Thanks for the reviews. Pushed to master and branch-2. > 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, > HBASE-19732_2.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 (v7.6.3#76005)
[jira] [Updated] (HBASE-19732) Replica regions does not return back the MSLAB chunks to pool
[ https://issues.apache.org/jira/browse/HBASE-19732?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] ramkrishna.s.vasudevan updated HBASE-19732: --- Status: Patch Available (was: Open) > 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, > HBASE-19732_2.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)
[jira] [Updated] (HBASE-19732) Replica regions does not return back the MSLAB chunks to pool
[ https://issues.apache.org/jira/browse/HBASE-19732?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] ramkrishna.s.vasudevan updated HBASE-19732: --- Attachment: HBASE-19732_2.patch Added Closable to MemstoreSnapshot and not to Memstore - [~saint@gmail.com] FYI. Adding test case seems very difficult because we need region for this secondary region mode and accessing whether the pool was used or not is not straightforward. > 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, > HBASE-19732_2.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)
[jira] [Updated] (HBASE-19732) Replica regions does not return back the MSLAB chunks to pool
[ 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)
[jira] [Updated] (HBASE-19732) Replica regions does not return back the MSLAB chunks to pool
[ https://issues.apache.org/jira/browse/HBASE-19732?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] ramkrishna.s.vasudevan updated HBASE-19732: --- Status: Patch Available (was: Open) > 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)
[jira] [Updated] (HBASE-19732) Replica regions does not return back the MSLAB chunks to pool
[ https://issues.apache.org/jira/browse/HBASE-19732?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] ramkrishna.s.vasudevan updated HBASE-19732: --- Attachment: HBASE-19732_1.patch I thought I have uploaded the patch. How ever I have not added test case. Not straightforward. I did not spend time on that. Will finalize a test tomorrow. > 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)
[jira] [Updated] (HBASE-19732) Replica regions does not return back the MSLAB chunks to pool
[ 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 > > > 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)
[jira] [Updated] (HBASE-19732) Replica regions does not return back the MSLAB chunks to pool
[ https://issues.apache.org/jira/browse/HBASE-19732?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] ramkrishna.s.vasudevan updated HBASE-19732: --- Summary: Replica regions does not return back the MSLAB chunks to pool (was: Replica regions does not return back the MSLAB pools) > 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 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)