[ 
https://issues.apache.org/jira/browse/HBASE-11249?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ted Yu updated HBASE-11249:
---------------------------

    Summary: Missing null check in finally block of 
HRegion#processRowsWithLocks() may lead to partially rolled back state in 
memstore.  (was: Missing null check in finally block of 
HRegion#processRowsWithLocks())

> Missing null check in finally block of HRegion#processRowsWithLocks() may 
> lead to partially rolled back state in memstore.
> --------------------------------------------------------------------------------------------------------------------------
>
>                 Key: HBASE-11249
>                 URL: https://issues.apache.org/jira/browse/HBASE-11249
>             Project: HBase
>          Issue Type: Bug
>            Reporter: Ted Yu
>            Priority: Minor
>
> At line 4883:
> {code}
>             Store store = getStore(kv);
>             if (store == null) {
>               checkFamily(CellUtil.cloneFamily(kv));
>               // unreachable
>             }
> {code}
> Exception would be thrown from checkFamily() if store is null.
> In the finally block:
> {code}
>       } finally {
>         if (!mutations.isEmpty() && !walSyncSuccessful) {
>           LOG.warn("Wal sync failed. Roll back " + mutations.size() +
>               " memstore keyvalues for row(s):" + StringUtils.byteToHexString(
>               processor.getRowsToLock().iterator().next()) + "...");
>           for (KeyValue kv : mutations) {
>             getStore(kv).rollback(kv);
>           }
> {code}
> There is no corresponding null check for return value of getStore() above, 
> potentially leading to partially rolled back state in memstore.



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

Reply via email to