有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java得到了org。阿帕奇。hadoop。hbase。PleaseHoldException:修改hbase时主机正在初始化。协处理器。区域hbasite中的类。xml

各位,我正在尝试向hbase添加一个区域观察者,代码如下:

public class TestAddColumnBaseRegionObserver extends BaseRegionObserver{

@Override

public void prePut(ObserverContext<RegionCoprocessorEnvironment> e, Put put, WALEdit edit, Durability durability) throws IOException {

     putUUIDColumnIfMissing(e, put, edit, durability);

}

private void     putUUIDColumnIfMissing(ObserverContext<RegionCoprocessorEnvironment> e, Put put,  WALEdit edit, Durability durability) {

    try {

        if(!put.has(Bytes.toBytes("cf1"), Bytes.toBytes("uuid"))) {

        String uuid = put.toString(); // md5

        put.add(Bytes.toBytes("cf1"), Bytes.toBytes("uuid"), Bytes.toBytes(uuid));

}

} catch (Exception e1) {

     e1.printStackTrace();

}

}

}

因此,如果表中没有“cf1:uuid”列,那么这段代码将向表中添加一个新列“uuid”

当我手动添加。jar在hbase shell中,但在执行其他操作时:修改hbase站点。xml,通过修改hbase。协处理器。区域类到TestAddColumnBaseRegionObserver类

<property>

<name>hbase.coprocessor.region.classes</name>

<value>com.hbase.hook.TestAddColumnBaseRegionObserver</value>

</property>

然后重新启动hbase,我在登录hbase外壳并执行hbase命令时报告了一个错误

ERROR: org.apache.hadoop.hbase.PleaseHoldException: Master is initializing   at org.apache.hadoop.hbase.master.HMaster.checkInitialized(HMaster.java:2177) at org.apache.hadoop.hbase.master.HMaster.checkNamespaceManagerReady(HMaster.java:2182) at org.apache.hadoop.hbase.master.HMaster.ensureNamespaceExists(HMaster.java:2375) at org.apache.hadoop.hbase.master.HMaster.createTable(HMaster.java:1444) at org.apache.hadoop.hbase.master.MasterRpcServices.createTable(MasterRpcServices.java:422) at org.apache.hadoop.hbase.protobuf.generated.MasterProtos$MasterService$2.callBlockingMethod(MasterProtos.java:48502) at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:2114) at org.apache.hadoop.hbase.ipc.CallRunner.run(CallRunner.java:101) 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:745)

以前有人遇到过类似的问题吗?或者你知道是什么导致了这个问题吗


共 (0) 个答案