You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@bookkeeper.apache.org by "ASF GitHub Bot (JIRA)" <ji...@apache.org> on 2016/12/13 21:03:59 UTC
[jira] [Commented] (BOOKKEEPER-986) Handle Memtable flush failure
[ https://issues.apache.org/jira/browse/BOOKKEEPER-986?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15746264#comment-15746264 ]
ASF GitHub Bot commented on BOOKKEEPER-986:
-------------------------------------------
GitHub user reddycharan opened a pull request:
https://github.com/apache/bookkeeper/pull/92
BOOKKEEPER-986: Handle memtable flush failure
- If the memtable flush is failed previously then
for the next addEntry call it will try to flush the
existing snapshot
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/reddycharan/bookkeeper handlememtableflushfailure
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/bookkeeper/pull/92.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #92
----
commit bc77cedf56e9308bea1da280e16b855646479311
Author: Charan Reddy Guttapalem <cg...@salesforce.com>
Date: 2016-09-13T18:44:33Z
BOOKKEEPER-986: Handle memtable flush failure
- If the memtable flush is failed previously then
for the next addEntry call it will try to flush the
existing snapshot
----
> Handle Memtable flush failure
> -----------------------------
>
> Key: BOOKKEEPER-986
> URL: https://issues.apache.org/jira/browse/BOOKKEEPER-986
> Project: Bookkeeper
> Issue Type: Bug
> Reporter: Charan Reddy Guttapalem
> Assignee: Charan Reddy Guttapalem
> Priority: Critical
>
> Consider the following scenario
> - currently bookie is in writemode but it is close to the diskusagethreshold and also entrymemtable is close to skipListSizeLimit
> - it received a addentry call, and now the size of the entrymemtable is greater than skipListSizeLimit
> - so onSizeLimitReached of SortedLedgerStorage will be called and now lets assume that memtable flush has failed because of diskusagethreshold
> - because of previous step, bookie would turn to readonly
> - now lets assume after certain rounds of compaction bookie reclaimed sufficient storage and went back to writemode
> - now bookie would be receiving addentry calls
> - because of outstanding snapshot from previous memtable flush failure, it will never retry to flush memtable
> - now the memory start keep going up and up and the process memory gets bloated
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)