hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sahil Aggarwal (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-17104) Improve cryptic error message "Memstore size is" on region close
Date Sat, 21 Jan 2017 16:34:26 GMT

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

Sahil Aggarwal commented on HBASE-17104:

We end up here only when abort=true and canFlush=true(region is writable) in which case we
don't flush memstore. If abort=false then we should have definitely flushed memstore by now
and size would be 0 if canFlush=true.

I have created patch for it but not able to submit using dev-support/submit-patch.py script.
Getting error: 

CRITICAL:submit-patch: Oops, something went wrong when uploading patch to jira.
Response: 403 Forbidden

> Improve cryptic error message "Memstore size is" on region close
> ----------------------------------------------------------------
>                 Key: HBASE-17104
>                 URL: https://issues.apache.org/jira/browse/HBASE-17104
>             Project: HBase
>          Issue Type: Bug
>          Components: regionserver
>            Reporter: Matteo Bertozzi
>            Priority: Trivial
>              Labels: beginner, noob
>             Fix For: 2.0.0
> while grepping my RS log for ERROR I found a cryptic
> {noformat}
> ERROR [RS_CLOSE_REGION-u1604vm:35021-1] regionserver.HRegion(1601): Memstore size is
> {noformat}
> from the code looks like we seems to want to notify the user about the fact that on close
the rs was not able to flush and there were things in the RS. 
> https://github.com/apache/hbase/blob/c3685760f004450667920144f926383eb307de53/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java#L1601
> {code}
> if (!canFlush) {
>   this.decrMemstoreSize(new MemstoreSize(memstoreDataSize.get(), getMemstoreHeapOverhead()));
> } else if (memstoreDataSize.get() != 0) {
>   LOG.error("Memstore size is " + memstoreDataSize.get());
> }
> {code}
> this should probably not even be an error but a warn or even info, unless we have puts
that specifically asked to not be written to the wal,  otherwise the data in the memstore
should be safe in the wals. 
> In any case it will be nice to have a message describing what is going on and why we
are notifying about the memstore size.

This message was sent by Atlassian JIRA

View raw message