hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Lars Hofhansl (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-10844) Coprocessor failure during batchmutation leaves the memstore datastructs in an inconsistent state
Date Tue, 15 Apr 2014 04:43:16 GMT

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

Lars Hofhansl commented on HBASE-10844:
---------------------------------------

If writeToWal is false for all mutations in this batch then the point of no return is the
flushing of the memstore.

Luckily the memstore flusher waits for all priot MVCC transactions to finish. And since in
doMiniBatchMutation we call the post hook before {{mvcc.completeMemstoreInsert(w)}} we're
safe from concurrent flushes.

Hence in that case it would be OK in theory to fail post hook and then roll back the memstore.


> Coprocessor failure during batchmutation leaves the memstore datastructs in an inconsistent
state
> -------------------------------------------------------------------------------------------------
>
>                 Key: HBASE-10844
>                 URL: https://issues.apache.org/jira/browse/HBASE-10844
>             Project: HBase
>          Issue Type: Bug
>          Components: regionserver
>            Reporter: Devaraj Das
>            Assignee: Devaraj Das
>             Fix For: 0.99.0, 0.94.19, 0.98.2, 0.96.3
>
>         Attachments: 10844-1.txt
>
>
> Observed this in the testing with Phoenix. The test in Phoenix - MutableIndexFailureIT
deliberately fails the batchmutation call via the installed coprocessor. But the update is
not rolled back. That leaves the memstore inconsistent. In particular, I observed that getFlushableSize
is updated before the coprocessor was called but the update is not rolled back. When the region
is being closed at some later point, the assert introduced in HBASE-10514 in the HRegion.doClose()
causes the RegionServer to shutdown abnormally.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Mime
View raw message