我正在尝试使用 HBaseTestingUtility 编写一些单元测试。当我在 HBaseTestingUtility 上说 startMiniCluster() 时,
private HBaseTestingUtility hBaseTestingUtility = new HBaseTestingUtility(my_conf);
hBaseTestingUtility.startMiniCluster();
执行失败并出现以下错误。
java.io.IOException: Waiting for startup of standalone server
at org.apache.hadoop.hbase.zookeeper.MiniZooKeeperCluster.startup(MiniZooKeeperCluster.java:253)
at org.apache.hadoop.hbase.HBaseTestingUtility.startMiniZKCluster(HBaseTestingUtility.java:780)
at org.apache.hadoop.hbase.HBaseTestingUtility.startMiniZKCluster(HBaseTestingUtility.java:750)
at org.apache.hadoop.hbase.HBaseTestingUtility.startMiniCluster(HBaseTestingUtility.java:992)
at org.apache.hadoop.hbase.HBaseTestingUtility.startMiniCluster(HBaseTestingUtility.java:868)
at org.apache.hadoop.hbase.HBaseTestingUtility.startMiniCluster(HBaseTestingUtility.java:862)
at org.apache.hadoop.hbase.HBaseTestingUtility.startMiniCluster(HBaseTestingUtility.java:806)
答案 0 :(得分:0)
找到了解决方案。 实际上 MiniZooKeeperCluster 无法执行 stat 命令,因此无法继续。我在执行测试用例之前设置了以下系统属性。
System.setProperty("zookeeper.4lw.commands.whitelist", "stat");