You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Wellington Chevreuil (Jira)" <ji...@apache.org> on 2021/10/04 14:28:00 UTC
[jira] [Created] (HBASE-26326) CreateTableProcedure fails when
FileBasedStoreFileTracker is set in global config
Wellington Chevreuil created HBASE-26326:
--------------------------------------------
Summary: CreateTableProcedure fails when FileBasedStoreFileTracker is set in global config
Key: HBASE-26326
URL: https://issues.apache.org/jira/browse/HBASE-26326
Project: HBase
Issue Type: Sub-task
Reporter: Wellington Chevreuil
Assignee: Wellington Chevreuil
CreateTableProcedure tries to instantiate SFT impl in its preCreate method so that the give SFT impl can update the tbl descriptor with all its required configs. When global config is set to FILE, FileBasedStoreFileTracker currently needs store dir path at it's constructor, but we don't have this info at this stage, so FileBasedStoreFileTracker get's an NPE:
{noformat}
2021-10-01 14:28:21,310 ERROR org.apache.hadoop.hbase.procedure2.ProcedureExecutor: CODE-BUG: Uncaught runtime exception: pid=54, state=RUNNABLE:CREATE_TABLE_PRE_OPERATION, locked=true; CreateTableProcedure table=test-3
java.lang.UnsupportedOperationException: Constructor threw an exception for org.apache.hadoop.hbase.regionserver.storefiletracker.MigrationStoreFileTracker
at org.apache.hadoop.hbase.util.ReflectionUtils.instantiate(ReflectionUtils.java:66)
at org.apache.hadoop.hbase.util.ReflectionUtils.newInstance(ReflectionUtils.java:72)
at org.apache.hadoop.hbase.regionserver.storefiletracker.StoreFileTrackerFactory.create(StoreFileTrackerFactory.java:107)
at org.apache.hadoop.hbase.regionserver.storefiletracker.StoreFileTrackerFactory.persistTrackerConfig(StoreFileTrackerFactory.java:164)
at org.apache.hadoop.hbase.master.procedure.CreateTableProcedure.preCreate(CreateTableProcedure.java:274)
at org.apache.hadoop.hbase.master.procedure.CreateTableProcedure.executeFromState(CreateTableProcedure.java:102)
at org.apache.hadoop.hbase.master.procedure.CreateTableProcedure.executeFromState(CreateTableProcedure.java:58)
at org.apache.hadoop.hbase.procedure2.StateMachineProcedure.execute(StateMachineProcedure.java:194)
at org.apache.hadoop.hbase.procedure2.Procedure.doExecute(Procedure.java:962)
at org.apache.hadoop.hbase.procedure2.ProcedureExecutor.execProcedure(ProcedureExecutor.java:1662)
at org.apache.hadoop.hbase.procedure2.ProcedureExecutor.executeProcedure(ProcedureExecutor.java:1409)
at org.apache.hadoop.hbase.procedure2.ProcedureExecutor.access$1100(ProcedureExecutor.java:78)
at org.apache.hadoop.hbase.procedure2.ProcedureExecutor$WorkerThread.run(ProcedureExecutor.java:1979)
Caused by: java.lang.reflect.InvocationTargetException
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at org.apache.hadoop.hbase.util.ReflectionUtils.instantiate(ReflectionUtils.java:58)
... 12 more
Caused by: java.lang.UnsupportedOperationException: Constructor threw an exception for org.apache.hadoop.hbase.regionserver.storefiletracker.FileBasedStoreFileTracker
at org.apache.hadoop.hbase.util.ReflectionUtils.instantiate(ReflectionUtils.java:66)
at org.apache.hadoop.hbase.util.ReflectionUtils.newInstance(ReflectionUtils.java:72)
at org.apache.hadoop.hbase.regionserver.storefiletracker.StoreFileTrackerFactory.createForMigration(StoreFileTrackerFactory.java:157)
at org.apache.hadoop.hbase.regionserver.storefiletracker.MigrationStoreFileTracker.<init>(MigrationStoreFileTracker.java:50)
... 17 more
Caused by: java.lang.reflect.InvocationTargetException
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at org.apache.hadoop.hbase.util.ReflectionUtils.instantiate(ReflectionUtils.java:58)
... 20 more
Caused by: java.lang.NullPointerException
at org.apache.hadoop.fs.Path.<init>(Path.java:146)
at org.apache.hadoop.fs.Path.<init>(Path.java:125)
at org.apache.hadoop.hbase.regionserver.storefiletracker.StoreFileListFile.<init>(StoreFileListFile.java:70)
at org.apache.hadoop.hbase.regionserver.storefiletracker.FileBasedStoreFileTracker.<init>(FileBasedStoreFileTracker.java:59)
... 25 more
{noformat}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)