hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Hudson (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-17937) Memstore size becomes negative in case of expensive postPut/Delete Coprocessor call
Date Fri, 21 Apr 2017 01:41:04 GMT

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

Hudson commented on HBASE-17937:

SUCCESS: Integrated in Jenkins build HBase-1.3-IT #28 (See [https://builds.apache.org/job/HBase-1.3-IT/28/])
HBASE-17937 Memstore size becomes negative in case of expensive (zhangduo: rev 3dcbb733e040f32e3f6bd9ab4063f5efe6bd522b)
* (add) hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestNegativeMemstoreSizeWithSlowCoprocessor.java
* (edit) hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java

> Memstore size becomes negative in case of expensive postPut/Delete Coprocessor call
> -----------------------------------------------------------------------------------
>                 Key: HBASE-17937
>                 URL: https://issues.apache.org/jira/browse/HBASE-17937
>             Project: HBase
>          Issue Type: Bug
>          Components: regionserver
>    Affects Versions: 2.0.0, 1.3.1, 0.98.24
>            Reporter: Abhishek Singh Chouhan
>            Assignee: Abhishek Singh Chouhan
>             Fix For: 2.0.0, 1.4.0, 1.2.6, 1.3.2, 1.1.11
>         Attachments: HBASE-17937.branch-1.001.patch, HBASE-17937.branch-1.002.patch,
HBASE-17937.master.001.patch, HBASE-17937.master.002.patch, HBASE-17937.master.002.patch,
HBASE-17937.master.003.patch, HBASE-17937.master.003.patch
> We ran into a situation where the memstore size became negative due to expensive postPut/Delete
Coprocessor calls in doMiniBatchMutate. We update the memstore size in the finally block of
doMiniBatchMutate, however a queued flush can be triggered during the coprocessor calls(if
they are taking time eg. index updates) since we have released the locks and advanced mvcc
at this point. The flush will turn the memstore size negative since the value subtracted is
the actual value flushed from stores. The negative value impacts the future flushes amongst
others that depend on memstore size.

This message was sent by Atlassian JIRA

View raw message