You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Bo Cui (JIRA)" <ji...@apache.org> on 2018/11/01 10:13:00 UTC

[jira] [Commented] (HBASE-19756) Master NPE during completed failed proc eviction

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

Bo Cui commented on HBASE-19756:
--------------------------------

a phenomenon we encountered,when we create a table and restart the cluster, we find that the number of files under /hbase/MasterProcedureWALs has not decreased.

the reason is that CreateTableProc is persisted in ProcWAL, and its nonceKey is not null

so,oldLog will not be deleted

 

> Master NPE during completed failed proc eviction
> ------------------------------------------------
>
>                 Key: HBASE-19756
>                 URL: https://issues.apache.org/jira/browse/HBASE-19756
>             Project: HBase
>          Issue Type: Bug
>    Affects Versions: 1.4.0, 1.3.1
>            Reporter: Thiruvel Thirumoolan
>            Assignee: Thiruvel Thirumoolan
>            Priority: Major
>             Fix For: 1.3.2, 1.4.1, 1.5.0, 2.0.0
>
>         Attachments: HBASE-19756.branch-1.4.001.patch, HBASE-19756.branch-1.4.002.patch, HBASE-19756.branch-1.4.003.patch, HBASE-19756.master.001.patch
>
>
> When procedures like Create table fails due to say AccessDeniedException, then a rollback procedure is created. When the rollback is being cleaned up, it results in an NPE because those nonce procs aren't persisted
> Stack trace when this happens:
> {noformat}
> java.lang.NullPointerException
>         at org.apache.hadoop.hbase.procedure2.store.ProcedureStoreTracker.delete(ProcedureStoreTracker.java:385)
>         at org.apache.hadoop.hbase.procedure2.store.wal.WALProcedureStore.updateStoreTracker(WALProcedureStore.java:547)
>         at org.apache.hadoop.hbase.procedure2.store.wal.WALProcedureStore.pushData(WALProcedureStore.java:504)
>         at org.apache.hadoop.hbase.procedure2.store.wal.WALProcedureStore.delete(WALProcedureStore.java:453)
>         at org.apache.hadoop.hbase.procedure2.ProcedureExecutor$CompletedProcedureCleaner.periodicExecute(ProcedureExecutor.java:184)
>         at org.apache.hadoop.hbase.procedure2.ProcedureExecutor.timeoutLoop(ProcedureExecutor.java:995)
>         at org.apache.hadoop.hbase.procedure2.ProcedureExecutor.access$500(ProcedureExecutor.java:78)
>         at org.apache.hadoop.hbase.procedure2.ProcedureExecutor$3.run(ProcedureExecutor.java:507)
> {noformat}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)