Hi folks, I'm running YCSB testing of JDBC T2 driver these days, and I encounter a HBase 706 Error very similar as JIRA 1929 describes, the exception back trace is like below:
Unexpected EXCEPTION : *** ERROR[1398] Error 706 occured while accessing the hbase subsystem. Fix that error and make sure hbase is up and running. Error Details: java.io.IOException: java.lang.reflect.InvocationTargetException org.apache.hadoop.hbase.client.HConnectionManager.createConnection(HConnectionManager.java:417) org.apache.hadoop.hbase.client.HConnectionManager.createConnection(HConnectionManager.java:394) org.apache.hadoop.hbase.client.HConnectionManager.getConnection(HConnectionManager.java:275) org.apache.hadoop.hbase.client.HBaseAdmin.checkHBaseAvailable(HBaseAdmin.java:2338) org.trafodion.sql.HBaseClient.init(HBaseClient.java:171) org.trafodion.jdbc.t2.SQLMXConnection.connectInit(Native Method) org.trafodion.jdbc.t2.SQLMXConnection.connectInit(SQLMXConnection.java:1910) org.trafodion.jdbc.t2.SQLMXConnection.prepareStatement(SQLMXConnection.java:804) DatabaseConnector.prepare_statement(DatabaseConnector.java:180) YCSBWorkload2.runSingletonSelect(YCSBWorkload2.java:288) WorkloadDriver.run(WorkloadDriver.java:410) T2 phoenix tests are fine as well as by passing the maven env just like PR427 fixed. And there's no such kind of problem if I run T4 tests. But obviously our YCSB tests dose not use Maven, so this is not related. Does anyone have any clue of the root cause of this yet? This looks like an environment problem, and very likely related to some dependent libs, otherwise how we explain if we by pass Maven then Phoenix can run well? I'm note quite familiar with the HBase things, but I noticed this looks like a reflection exception, and is there any possibility that this is some incompatible libs causing this, thus the object instance(maybe Configuration?) cannot be serialized or parsed correctly when doing HBase connect? I have to say that the CLASSPATH of Trafodion environment is really a mess, as it includes such enormous dependent .jar libs and paths in, and even there's duplicate ones. Does anyone clear about which are useful and which are not? Is there any that we can remove from the CLASSPATH? I'm kind of stuck in this place right now, which makes me cannot go proceed with my tests. ..... —— Life’s a journey not a destination, don’t just tell what tomorrow brings.
