近况如何?
对不起,如果我在这里听起来很愚蠢。
我正在尝试创建一个基本的 play2.0 - HBase 应用程序。当我尝试从游戏中连接 HBase 时,ZooKeeper 向我返回 HBase 服务器地址的垃圾字符。
def main(args : Array[String]) : Unit = {
val conf = HBaseConfiguration create
val admin = new HBaseAdmin(conf)
// list the tables
val listtables = admin.listTables()
listtables.foreach(println)
}
我已经确定了弱点,它位于 org.apache.hadoop.hbase.zookeeper.ZooKeeperNodeTracker。它使用本地地址和端口的垃圾值加载数据,然后将其传递给 HServerAddress 类以进行进一步操作。
我查看了我的 hbase-site.xml(仅包含 localhost)和 hbase-default.xml,它们看起来就像 Apache 指示的那样。
<configuration>
<property>
<name>hbase.rootdir</name>
<value>file:///Users/gchandra/Applications/hbase-0.92.1/data-store/hbase</value>
</property>
</configuration>
下面粘贴的是堆栈跟踪。
Exception in thread "main" java.lang.IllegalArgumentException: Not a host:port pair: ?���5610@L-C02FF6MTDF91��192.168.1.4,64256,1332739256936
at org.apache.hadoop.hbase.HServerAddress.<init>(HServerAddress.java:60)
at org.apache.hadoop.hbase.MasterAddressTracker.getMasterAddress(MasterAddressTracker.java:63)
at org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation.getMaster(HConnectionManager.java:354)
at org.apache.hadoop.hbase.client.HBaseAdmin.<init>(HBaseAdmin.java:94)
at services.HBaseConnection$.main(HBaseConnection.scala:20)
at services.HBaseConnection.main(HBaseConnection.scala)
如果有人可以在这里帮助我,将不胜感激!谢谢!