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)