[ https://issues.apache.org/jira/browse/HBASE-22550?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Duo Zhang reopened HBASE-22550: ------------------------------- The problem is still there... > Do not use Threads.newDaemonThreadFactory in ConnectionUtils.getThreadPool > -------------------------------------------------------------------------- > > Key: HBASE-22550 > URL: https://issues.apache.org/jira/browse/HBASE-22550 > Project: HBase > Issue Type: Sub-task > Components: Client > Reporter: Duo Zhang > Assignee: Duo Zhang > Priority: Major > Fix For: HBASE-21512 > > > It will inherit the ThreadGroup of the current thread, which is not necessary > here but could introduce problems if the thread which creates the thread pool > is dead. See this: > https://builds.apache.org/job/HBase-Flaky-Tests/job/HBASE-21512/1191/artifact/hbase-server/target/surefire-reports/org.apache.hadoop.hbase.master.procedure.TestTruncateTableProcedure-output.txt/*view*/ > {noformat} > 2019-06-07 00:58:47,175 ERROR [PEWorker-1] > procedure2.ProcedureExecutor(1667): CODE-BUG: Uncaught runtime exception: > pid=307, state=RUNNABLE:SPLIT_TABLE_REGION_UPDATE_META, hasLock=true; > SplitTableRegionProcedure table=testTruncateWithPreserveAfterSplit, > parent=bc630be809a91baf71d0a05051bd502b, > daughterA=ce5cf8608cf97afcd09a33545d4169ab, > daughterB=ec4d88471626f18b811bb6910f33a067 > java.lang.IllegalThreadStateException > at java.lang.ThreadGroup.addUnstarted(ThreadGroup.java:867) > at java.lang.Thread.init(Thread.java:405) > at java.lang.Thread.init(Thread.java:349) > at java.lang.Thread.<init>(Thread.java:599) > at org.apache.hadoop.hbase.util.Threads$2.newThread(Threads.java:220) > at org.apache.hadoop.hbase.util.Threads$3.newThread(Threads.java:246) > at > java.util.concurrent.ThreadPoolExecutor$Worker.<init>(ThreadPoolExecutor.java:619) > at > java.util.concurrent.ThreadPoolExecutor.addWorker(ThreadPoolExecutor.java:932) > at > java.util.concurrent.ThreadPoolExecutor.execute(ThreadPoolExecutor.java:1367) > at > java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:134) > at > org.apache.hadoop.hbase.client.TableOverAsyncTable.coprocssorService(TableOverAsyncTable.java:431) > at > org.apache.hadoop.hbase.client.TableOverAsyncTable.coprocessorService(TableOverAsyncTable.java:469) > at > org.apache.hadoop.hbase.client.Table.coprocessorService(Table.java:527) > at > org.apache.hadoop.hbase.MetaTableAccessor.multiMutate(MetaTableAccessor.java:1768) > at > org.apache.hadoop.hbase.MetaTableAccessor.multiMutate(MetaTableAccessor.java:1729) > at > org.apache.hadoop.hbase.MetaTableAccessor.splitRegion(MetaTableAccessor.java:1688) > at > org.apache.hadoop.hbase.master.assignment.RegionStateStore.splitRegion(RegionStateStore.java:237) > at > org.apache.hadoop.hbase.master.assignment.AssignmentManager.markRegionAsSplit(AssignmentManager.java:1643) > at > org.apache.hadoop.hbase.master.assignment.SplitTableRegionProcedure.updateMeta(SplitTableRegionProcedure.java:824) > at > org.apache.hadoop.hbase.master.assignment.SplitTableRegionProcedure.executeFromState(SplitTableRegionProcedure.java:304) > at > org.apache.hadoop.hbase.master.assignment.SplitTableRegionProcedure.executeFromState(SplitTableRegionProcedure.java:91) > at > org.apache.hadoop.hbase.procedure2.StateMachineProcedure.execute(StateMachineProcedure.java:194) > at > org.apache.hadoop.hbase.procedure2.Procedure.doExecute(Procedure.java:959) > at > org.apache.hadoop.hbase.procedure2.ProcedureExecutor.execProcedure(ProcedureExecutor.java:1648) > at > org.apache.hadoop.hbase.procedure2.ProcedureExecutor.executeProcedure(ProcedureExecutor.java:1395) > at > org.apache.hadoop.hbase.procedure2.ProcedureExecutor.access$1100(ProcedureExecutor.java:78) > at > org.apache.hadoop.hbase.procedure2.ProcedureExecutor$WorkerThread.run(ProcedureExecutor.java:1964) > {noformat} -- This message was sent by Atlassian JIRA (v7.6.3#76005)