Description
Here is the output from trafodion.dtm.log
2017-05-10 22:38:13,417 INFO dtm.HBaseTxClient: Recovery thread sleep set to: 1000 ms
2017-05-10 22:38:13,422 ERROR dtm.HBaseTxClient: Caught recovery thread exception for tmid: 1 retries: 0
org.apache.hadoop.hbase.TableNotFoundException: TRAFODION.DTM.TDDL
at org.apache.hadoop.hbase.client.ConnectionManager$HConnectionImplementation.locateRegionInMeta(ConnectionManager.java:1298)
at org.apache.hadoop.hbase.client.ConnectionManager$HConnectionImplementation.locateRegion(ConnectionManager.java:1126)
at org.apache.hadoop.hbase.client.RpcRetryingCallerWithReadReplicas.getRegionLocations(RpcRetryingCallerWithReadReplicas.java:299)
at org.apache.hadoop.hbase.client.ScannerCallableWithReplicas.call(ScannerCallableWithReplicas.java:149)
at org.apache.hadoop.hbase.client.ScannerCallableWithReplicas.call(ScannerCallableWithReplicas.java:57)
at org.apache.hadoop.hbase.client.RpcRetryingCaller.callWithoutRetries(RpcRetryingCaller.java:200)
at org.apache.hadoop.hbase.client.ClientScanner.call(ClientScanner.java:293)
at org.apache.hadoop.hbase.client.ClientScanner.nextScanner(ClientScanner.java:268)
at org.apache.hadoop.hbase.client.ClientScanner.initializeScannerInConstruction(ClientScanner.java:140)
at org.apache.hadoop.hbase.client.ClientScanner.<init>(ClientScanner.java:135)
at org.apache.hadoop.hbase.client.HTable.getScanner(HTable.java:888)
at org.apache.hadoop.hbase.client.transactional.TmDDL.getTxIdList(TmDDL.java:329)
at org.trafodion.dtm.HBaseTxClient$RecoveryThread.getTransactionsFromTmDDL(HBaseTxClient.java:1357)
at org.trafodion.dtm.HBaseTxClient$RecoveryThread.run(HBaseTxClient.java:1161)
2017-05-10 22:38:14,654 INFO Configuration.deprecation: hadoop.native.lib is deprecated. Instead, use io.native.lib.available
2017-05-10 22:38:15,194 INFO dtm.HBaseTxClient: useForgotten is true
The TmDdl.java file creates the table if the dtmid is 0, otherwise there is a 3 second delay to allow the table to get created. The three second delay is non-deterministic and insufficient to ensure the table is created prior to proceding.