进入phoenix 的bin目录,执行./sqlline.py hadoop107,hadoop108,hadoop104命令
出现以下异常:
15/03/10 10:14:08 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
15/03/10 10:14:10 WARN ipc.CoprocessorRpcChannel: Call failed on IOException
org.apache.hadoop.hbase.DoNotRetryIOException: org.apache.hadoop.hbase.DoNotRetryIOException: SYSTEM.CATALOG: org.apache.hadoop.hbase.regionserver.HRegion.mutateRowsWithLocks(Ljava/util/Collection;Ljava/util/Collection;)V
at org.apache.phoenix.util.ServerUtil.createIOException(ServerUtil.java:84)
at org.apache.phoenix.coprocessor.MetaDataEndpointImpl.createTable(MetaDataEndpointImpl.java:820)
at org.apache.phoenix.coprocessor.generated.MetaDataProtos$MetaDataService.callMethod(MetaDataProtos.java:7763)
at org.apache.hadoop.hbase.regionserver.HRegion.execService(HRegion.java:5890)
at org.apache.hadoop.hbase.regionserver.HRegionServer.execServiceOnRegion(HRegionServer.java:3433)
at org.apache.hadoop.hbase.regionserver.HRegionServer.execService(HRegionServer.java:3415)
at org.apache.hadoop.hbase.protobuf.generated.ClientProtos$ClientService$2.callBlockingMethod(ClientProtos.java:30812)
at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:2029)
at org.apache.hadoop.hbase.ipc.CallRunner.run(CallRunner.java:107)
at org.apache.hadoop.hbase.ipc.RpcExecutor.consumerLoop(RpcExecutor.java:130)
at org.apache.hadoop.hbase.ipc.RpcExecutor$1.run(RpcExecutor.java:107)
at java.lang.Thread.run(Thread.java:744)
Caused by: java.lang.NoSuchMethodError: org.apache.hadoop.hbase.regionserver.HRegion.mutateRowsWithLocks(Ljava/util/Collection;Ljava/util/Collection;)V
at org.apache.phoenix.coprocessor.MetaDataEndpointImpl.createTable(MetaDataEndpointImpl.java:800)
... 10 more
原因是该版本与Hbase0.98.10-hadoop2不兼容,网上给出的解决方案是:
" You will need to upgrade to HBase 0.98.10.1 to resolve this issue. Or,you can recompile Phoenix from source with -Dhbase.version=0.98.10 (or
0.98.10.1) "
考虑到集群环境的复杂,打算通过重新编译Phoenix