本附录描述了早期版本的 HBase 与 HBase 2.0 的不兼容更改。此列表并不意味着完全包含所有可能的不兼容性。相反,这些内容旨在深入了解大多数用户将从 HBase 1.x 版本中遇到的一些明显的不兼容性。
HBASE-1912-HBCK 是用于捕获不一致性的 HBase 数据库检查工具。作为 HBase 管理员,您不应使用 HBase 1.0 版 hbck 工具来检查 HBase 2.0 数据库。这样做会破坏数据库并引发异常错误。
HBASE-16189 和 HBASE-18945-您无法通过 HBase 1.0 版本打开 HBase 2.0 hfiles。如果您是使用 HBase 版本 1.x 的管理员或 HBase 用户,则必须先滚动升级到最新版本的 HBase 1.x,然后再升级到 HBase 2.0。
HBASE-18240 - 更改了 ReplicationEndpoint 接口。它还引入了一个新的 hbase-third party 1.0,它打包了所有第三方实用程序,这些实用程序预计将在 hbase 集群中运行。
HBASE-16769 - 来自 MasterObserver 和 RegionServerObserver 的不推荐的 PB 引用。
HBASE-17312 - [JDK8]使用 Observer 协处理器的默认方法。 BaseMasterAndRegionObserver,BaseMasterObserver,BaseRegionObserver,BaseRegionServerObserver 和 BaseWALObserver 的接口类使用 JDK8 的'default'关键字来提供空的和无操作的实现。
接口 HTableInterface HBase 2.0 对下面列出的方法进行了以下更改:
更改 | 结果 |
---|---|
抽象方法 getTable(TableName)已被删除。 | NoSuchMethodError 异常可能会中断客户端程序。 |
抽象方法 getTable(TableName,ExecutorService)已被删除。 | A client program may be interrupted by NoSuchMethodError exception. |
下表描述了协处理器的更改。
Change | Result |
---|---|
这个类已成为界面。 | IncompatibleClassChangeError 或 InstantiationError 异常可能会中断客户端程序,具体取决于此类的用法。 |
Audience Private 但已删除的类。
Change | Result |
---|---|
字段协处理器的类型已从 java.util.SortedSet <e>更改为 org.apache.hadoop.hbase.util.SortedList <e>。</e></e> | NoSuchFieldError 异常可能会中断客户端程序。 |
HBase 2.0 引入了对 MasterObserver 接口的以下更改。
Change | Result |
---|---|
已从此界面中删除抽象方法 voidpostCloneSnapshot(ObserverContext <mastercoprocessorenvironment>,HBaseProtos.SnapshotDescription,HTableDescriptor)。</mastercoprocessorenvironment> | A client program may be interrupted by NoSuchMethodError exception. |
已从此界面中删除抽象方法 voidpostCreateTable(ObserverContext <mastercoprocessorenvironment>,HTableDescriptor,HRegionInfo [])。</mastercoprocessorenvironment> | NoSuchMethodErrorexception 可能会中断客户端程序。 |
已从此界面中删除抽象方法 voidpostDeleteSnapshot(ObserverContext <mastercoprocessorenvironment>,HBaseProtos.SnapshotDescription)。</mastercoprocessorenvironment> | A client program may be interrupted by NoSuchMethodErrorexception. |
已从此接口中删除抽象方法 voidpostGetTableDescriptors(ObserverContext <mastercoprocessorenvironment>,List <htabledescriptor>)。</htabledescriptor></mastercoprocessorenvironment> | A client program may be interrupted by NoSuchMethodErrorexception. |
已从此接口中删除抽象方法 voidpostModifyTable(ObserverContext <mastercoprocessorenvironment>,TableName,HTableDescriptor)。</mastercoprocessorenvironment> | A client program may be interrupted by NoSuchMethodErrorexception. |
已从此界面中删除抽象方法 voidpostRestoreSnapshot(ObserverContext <mastercoprocessorenvironment>,HBaseProtos.SnapshotDescription,HTableDescriptor)。</mastercoprocessorenvironment> | A client program may be interrupted by NoSuchMethodErrorexception. |
已从此界面中删除抽象方法 voidpostSnapshot(ObserverContext <mastercoprocessorenvironment>,HBaseProtos.SnapshotDescription,HTableDescriptor)。</mastercoprocessorenvironment> | A client program may be interrupted by NoSuchMethodErrorexception. |
已从此界面中删除抽象方法 voidpreCloneSnapshot(ObserverContext <mastercoprocessorenvironment>,HBaseProtos.SnapshotDescription,HTableDescriptor)。</mastercoprocessorenvironment> | A client program may be interrupted by NoSuchMethodErrorexception. |
已从此接口中删除抽象方法 voidpreCreateTable(ObserverContext <mastercoprocessorenvironment>,HTableDescriptor,HRegionInfo [])。</mastercoprocessorenvironment> | A client program may be interrupted by NoSuchMethodErrorexception. |
已从此界面中删除抽象方法 voidpreDeleteSnapshot(ObserverContext <mastercoprocessorenvironment>,HBaseProtos.SnapshotDescription)。</mastercoprocessorenvironment> | A client program may be interrupted by NoSuchMethodErrorexception. |
已从此接口中删除抽象方法 voidpreGetTableDescriptors(ObserverContext <mastercoprocessorenvironment>,List <tablename>,List <htabledescriptor>)。</htabledescriptor></tablename></mastercoprocessorenvironment> | A client program may be interrupted by NoSuchMethodErrorexception. |
已从此接口中删除抽象方法 voidpreModifyTable(ObserverContext <mastercoprocessorenvironment>,TableName,HTableDescriptor)。</mastercoprocessorenvironment> | A client program may be interrupted by NoSuchMethodErrorexception. |
已从此界面中删除抽象方法 voidpreRestoreSnapshot(ObserverContext <mastercoprocessorenvironment>,HBaseProtos.SnapshotDescription,HTableDescriptor)。</mastercoprocessorenvironment> | A client program may be interrupted by NoSuchMethodErrorexception. |
已从此界面中删除抽象方法 voidpreSnapshot(ObserverContext <mastercoprocessorenvironment>,HBaseProtos.SnapshotDescription,HTableDescriptor)。</mastercoprocessorenvironment> | A client program may be interrupted by NoSuchMethodErrorexception. |
HBase 2.0 引入了对 RegionObserver 接口的以下更改。
Change | Result |
---|---|
已从此界面中删除抽象方法 voidpostCloseRegionOperation(ObserverContext <regioncoprocessorenvironment>,HRegion.Operation)。</regioncoprocessorenvironment> | A client program may be interrupted by NoSuchMethodError exception. |
已从此接口中删除抽象方法 voidpostCompactSelection(ObserverContext <regioncoprocessorenvironment>,Store,ImmutableList <storefile>)。</storefile></regioncoprocessorenvironment> | A client program may be interrupted by NoSuchMethodError exception. |
已从此界面中删除抽象方法 voidpostCompactSelection(ObserverContext <regioncoprocessorenvironment>,Store,ImmutableList <storefile>,CompactionRequest)。</storefile></regioncoprocessorenvironment> | A client program may be interrupted by NoSuchMethodError exception. |
已从此接口中删除抽象方法 voidpostGetClosestRowBefore(ObserverContext <regioncoprocessorenvironment>,byte [],byte [],Result)。</regioncoprocessorenvironment> | A client program may be interrupted by NoSuchMethodError exception. |
已从此界面中删除了抽象方法 DeleteTrackerpostInstantiateDeleteTracker(ObserverContext <regioncoprocessorenvironment>,DeleteTracker)。</regioncoprocessorenvironment> | A client program may be interrupted by NoSuchMethodError exception. |
已从此界面中删除抽象方法 voidpostSplit(ObserverContext <regioncoprocessorenvironment>,HRegion,HRegion)。</regioncoprocessorenvironment> | A client program may be interrupted by NoSuchMethodError exception. |
已从此界面中删除抽象方法 voidpostStartRegionOperation(ObserverContext <regioncoprocessorenvironment>,HRegion.Operation)。</regioncoprocessorenvironment> | A client program may be interrupted by NoSuchMethodError exception. |
已从此界面中删除抽象方法 StoreFile.ReaderpostStoreFileReaderOpen(ObserverContext <regioncoprocessorenvironment>,FileSystem,Path,FSDataInputStreamWrapper,long,CacheConfig,Reference,StoreFile.Reader)。</regioncoprocessorenvironment> | A client program may be interrupted by NoSuchMethodError exception. |
已从此界面中删除抽象方法 voidpostWALRestore(ObserverContext <regioncoprocessorenvironment>,HRegionInfo,HLogKey,WALEdit)。</regioncoprocessorenvironment> | A client program may be interrupted by NoSuchMethodError exception. |
已从此界面中删除了抽象方法 InternalScannerpreFlushScannerOpen(ObserverContext <regioncoprocessorenvironment>,Store,KeyValueScanner,InternalScanner)。</regioncoprocessorenvironment> | A client program may be interrupted by NoSuchMethodError exception. |
已从此接口中删除抽象方法 voidpreGetClosestRowBefore(ObserverContext <regioncoprocessorenvironment>,byte [],byte [],Result)。</regioncoprocessorenvironment> | A client program may be interrupted by NoSuchMethodError exception. |
已从此界面中删除抽象方法 StoreFile.ReaderpreStoreFileReaderOpen(ObserverContext <regioncoprocessorenvironment>,FileSystem,Path,FSDataInputStreamWrapper,long,CacheConfig,Reference,StoreFile.Reader)。</regioncoprocessorenvironment> | A client program may be interrupted by NoSuchMethodError exception. |
已从此界面中删除抽象方法 voidpreWALRestore(ObserverContext <regioncoprocessorenvironment>,HRegionInfo,HLogKey,WALEdit)。</regioncoprocessorenvironment> | A client program may be interrupted by NoSuchMethodError exception. |
HBase 2.0 引入了对 WALObserver 接口的以下更改。
Change | Result |
---|---|
已从此界面中删除抽象方法 voidpostWALWrite(ObserverContext <walcoprocessorenvironment>,HRegionInfo,HLogKey,WALEdit)。</walcoprocessorenvironment> | A client program may be interrupted by NoSuchMethodError exception. |
已从此界面中删除抽象方法 booleanpreWALWrite(ObserverContext <walcoprocessorenvironment>,HRegionInfo,HLogKey,WALEdit)。</walcoprocessorenvironment> | A client program may be interrupted by NoSuchMethodError exception. |
HBase 2.0 引入了以下类的更改:
hbase-server-1.0.0.jar,OnlineRegions.class 包 org.apache.hadoop.hbase.regionserver
组织/阿帕奇/ hadoop 的/ HBase 的/ RegionServer 的/ OnlineRegions.getFromOnlineRegions:(Ljava /郎/字符串;)Lorg /阿帕奇/ hadoop 的/ HBase 的/ RegionServer 的/ HRegion;
Change | Result |
---|---|
返回值类型已从 Region 更改为 Region。 | 此方法已被删除,因为返回类型是方法签名的一部分。 NoSuchMethodError 异常可能会中断客户端程序。 |
hbase-server-1.0.0.jar,RegionCoprocessorEnvironment.class 包 org.apache.hadoop.hbase.coprocessor
组织/阿帕奇/ hadoop 的/ HBase 的/协处理器/ RegionCoprocessorEnvironment.getRegion :()Lorg /阿帕奇/ hadoop 的/ HBase 的/ RegionServer 的/ HRegion;
Change | Result |
---|---|
返回值类型已从 org.apache.hadoop.hbase.regionserver.HRegion 更改为 org.apache.hadoop.hbase.regionserver.Region。 | This method has been removed because the return type is part of the method signature. A client program may be interrupted by NoSuchMethodError exception. |
hbase-server-1.0.0.jar,RegionCoprocessorHost.class 包 org.apache.hadoop.hbase.regionserver
组织/阿帕奇/ hadoop 的/ HBase 的/ RegionServer 的/ RegionCoprocessorHost.postAppend:(Lorg /阿帕奇/ hadoop 的/ HBase 的/客户端/追加; Lorg /阿帕奇/ hadoop 的/ HBase 的/客户/结果;)V
Change | Result |
---|---|
返回值类型已从 void 更改为 org.apache.hadoop.hbase.client.Result。 | This method has been removed because the return type is part of the method signature. A client program may be interrupted by NoSuchMethodError exception. |
组织/阿帕奇/ hadoop 的/ HBase 的/ RegionServer 的/ RegionCoprocessorHost.preStoreFileReaderOpen:(Lorg /阿帕奇/ hadoop 的/ FS /文件系统; Lorg /阿帕奇/ hadoop 的/ FS /路径; Lorg /阿帕奇/ hadoop 的/ HBase 的/ IO / FSDataInputStreamWrapper; JLorg /阿帕奇/ hadoop 的/ HBase 的/ IO / HFILE / CacheConfig; Lorg /阿帕奇/ hadoop 的/ HBase 的/ IO /参考)Lorg /阿帕奇/ hadoop 的/ HBase 的/ RegionServer 的/ StoreFile $阅读器;
Change | Result |
---|---|
返回值类型已从 StoreFile.Reader 更改为 StoreFileReader。 | This method has been removed because the return type is part of the method signature. A client program may be interrupted by NoSuchMethodError exception. |
包 org.apache.hadoop.hbase.ipc
Change | Result |
---|---|
抽象方法 void dispatch(CallRunner)已从此类中删除。 | A client program may be interrupted by NoSuchMethodError exception. |
hbase-server-1.0.0.jar,RpcScheduler.class 包 org.apache.hadoop.hbase.ipc
组织/阿帕奇/ hadoop 的/ HBase 的/ IPC / RpcScheduler.dispatch:(Lorg /阿帕奇/ hadoop 的/ HBase 的/ IPC / CallRunner;)V
Change | Result |
---|---|
返回值类型已从 void 更改为 boolean。 | This method has been removed because the return type is part of the method signature. A client program may be interrupted by NoSuchMethodError exception. |
Change | Result |
---|---|
已从此接口中删除了抽象方法 longgetDeadline(RPCProtos.RequestHeader,Message)。 | A client program may be interrupted by NoSuchMethodError exception. |
抽象方法 int getPriority(RPCProtos.RequestHeader,Message)已从此接口中删除。 | A client program may be interrupted by NoSuchMethodError exception. |
Change | Result |
---|---|
字段类型 CurCall 已从 java.lang.ThreadLocal <rpcserver.call>更改为 java.lang.ThreadLocal <rpccall>。</rpccall></rpcserver.call> | A client program may be interrupted by NoSuchFieldError exception. |
这堂课变得抽象了。 | InstantiationError 异常可能会中断客户端程序。 |
抽象方法 int getNumOpenConnections()已添加到此类中。 | 此类变为抽象,客户端程序可能会被 InstantiationError 异常中断。 |
已从此类中删除 org.apache.hadoop.hbase.util.Counter 类型的字段 callQueueSize。 | A client program may be interrupted by NoSuchFieldError exception. |
已从此类中删除了类型为 java.util.List <rpcserver.connection>的字段 connectionList。</rpcserver.connection> | A client program may be interrupted by NoSuchFieldError exception. |
已从此类中删除 int 类型的字段 maxIdleTime。 | A client program may be interrupted by NoSuchFieldError exception. |
已从此类中删除 int 类型的字段 numConnections。 | A client program may be interrupted by NoSuchFieldError exception. |
int 类型的字段端口已从此类中删除。 | A client program may be interrupted by NoSuchFieldError exception. |
已从此类中删除了 long 类型的字段 purgeTimeout。 | A client program may be interrupted by NoSuchFieldError exception. |
RpcServer.Responder 类型的字段响应程序已从此类中删除。 | A client program may be interrupted by NoSuchFieldError exception. |
已从此类中删除 int 类型的字段 socketSendBufferSize。 | A client program may be interrupted by NoSuchFieldError exception. |
已从此类中删除 int 类型的字段 thresholdIdleConnections。 | A client program may be interrupted by NoSuchFieldError exception. |
以下摘要方法已被删除:
Change | Result |
---|---|
抽象方法 Pair <message>调用(BlockingService,Descriptors.MethodDescriptor,Message,CellScanner,long,MonitoredRPCHandler)已从此界面中删除。</message> | A client program may be interrupted by NoSuchMethodError exception. |
HBASE-18733:WALKey 已在 HBase 2.0 中完全清除。以下是 WALKey 的更改:
Change | Result |
---|---|
字段 clusterIds 的访问级别已从 protected 更改为 private。 | IllegalAccessError 异常可能会中断客户端程序。 |
字段 compressionContext 的访问级别已从 protected 更改为 private。 | A client program may be interrupted by IllegalAccessError exception. |
字段 encodedRegionName 的访问级别已从 protected 更改为 private。 | A client program may be interrupted by IllegalAccessError exception. |
字段表名的访问级别已从 protected 更改为 private。 | A client program may be interrupted by IllegalAccessError exception. |
字段 writeTime 的访问级别已从 protected 更改为 private。 | A client program may be interrupted by IllegalAccessError exception. |
以下字段已被删除:
Change | Result |
---|---|
已从此类中删除 org.apache.commons.logging.Log 类型的字段日志。 | A client program may be interrupted by NoSuchFieldError exception. |
WALKey.Version 类型的字段 VERSION 已从此类中删除。 | A client program may be interrupted by NoSuchFieldError exception. |
已从此类中删除了 long 类型的字段 logSeqNum。 | A client program may be interrupted by NoSuchFieldError exception. |
以下是对 WALEdit.class 的更改:hbase-server-1.0.0.jar,WALEdit.class 包 org.apache.hadoop.hbase.regionserver.wal
组织/阿帕奇/ hadoop 的/ HBase 的/ RegionServer 的/沃尔玛/ WALEdit.getCompaction:(Lorg /阿帕奇/ hadoop 的/ HBase 的/细胞)Lorg /阿帕奇/ hadoop 的/ HBase 的/ protobuf 的/生成/ WALProtos $ CompactionDescriptor;
Change | Result |
---|---|
返回值类型已从 org.apache.hadoop.hbase.protobuf.generated.WALProtos.CompactionDescriptor 更改为 org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.CompactionDescriptor。 | This method has been removed because the return type is part of the method signature. A client program may be interrupted by NoSuchMethodError exception. |
组织/阿帕奇/ hadoop 的/ HBase 的/ RegionServer 的/沃尔玛/ WALEdit.getFlushDescriptor:(Lorg /阿帕奇/ hadoop 的/ HBase 的/细胞)Lorg /阿帕奇/ hadoop 的/ HBase 的/ protobuf 的/生成/ WALProtos $ FlushDescriptor;
Change | Result |
---|---|
返回值类型已从 org.apache.hadoop.hbase.protobuf.generated.WALProtos.FlushDescriptor 更改为 org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.FlushDescriptor。 | This method has been removed because the return type is part of the method signature. A client program may be interrupted by NoSuchMethodError exception. |
组织/阿帕奇/ hadoop 的/ HBase 的/ RegionServer 的/沃尔玛/ WALEdit.getRegionEventDescriptor:(Lorg /阿帕奇/ hadoop 的/ HBase 的/细胞)Lorg /阿帕奇/ hadoop 的/ HBase 的/ protobuf 的/生成/ WALProtos $ RegionEventDescriptor;
Change | Result |
---|---|
返回值类型已从 org.apache.hadoop.hbase.protobuf.generated.WALProtos.RegionEventDescriptor 更改为 org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.RegionEventDescriptor。 | This method has been removed because the return type is part of the method signature. A client program may be interrupted by NoSuchMethodError exception. |
以下是对 WALKey.class:package org.apache.hadoop.hbase.wal 的更改
组织/阿帕奇/ hadoop 的/ HBase 的/沃尔玛/ WALKey.getBuilder:(Lorg /阿帕奇/ hadoop 的/ HBase 的/ RegionServer 的/沃尔/ WALCellCodec $ ByteStringCompressor)Lorg /阿帕奇/ hadoop 的/ HBase 的/ protobuf 的/生成/ WALProtos $ $ WALKey 助洗剂;
Change | Result |
---|---|
返回值类型已从 org.apache.hadoop.hbase.protobuf.generated.WALProtos.WALKey.Builder 更改为 org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.WALKey.Builder。 | This method has been removed because the return type is part of the method signature. A client program may be interrupted by NoSuchMethodError exception. |
HBASE-16769 - 已删除 MasterObserver 和 RegionServerObserver 中的 PB 引用。
您无法管理 HBase 2.0 群集与 HBase 1.0 客户端,其中包括 Admin ops 的 RelicationAdmin,ACC,Thrift 和 REST 使用。返回 protobufs 的方法已更改为返回 POJO。 pb 不再用于 API 中。异步方法的返回值已从 void 更改为 Future。 HBASE-18106 - Admin.listProcedures 和 Admin.listLocks 重命名为 getProcedures 和 getLocks。 MapReduce 使用 Admin 执行以下 admin.getClusterStatus()来计算 Splits。
管理 API 的节约使用:compact(ByteBuffer)createTable(ByteBuffer,List <columndescriptor>)deleteTable(ByteBuffer)disableTable(ByteBuffer)enableTable(ByteBuffer)getTableNames()majorCompact(ByteBuffer)</columndescriptor>
Admin API 的 REST 用法:hbase-rest org.apache.hadoop.hbase.rest RootResource getTableList()TableName [] tableNames = servlet.getAdmin()。listTableNames(); SchemaResource delete(UriInfo)Admin admin = servlet.getAdmin(); update(TableSchemaModel,boolean,UriInfo)Admin admin = servlet.getAdmin(); StorageClusterStatusResource get(UriInfo)ClusterStatus status = servlet.getAdmin()。getClusterStatus(); StorageClusterVersionResource get(UriInfo)model.setVersion(servlet.getAdmin()。getClusterStatus()。getHBaseVersion()); TableResource exists()返回 servlet.getAdmin()。tableExists(TableName.valueOf(table));
以下是对 Admin 界面的更改:
Change | Result |
---|---|
已从此接口中删除抽象方法 createTableAsync(HTableDescriptor,byte [] [])。 | A client program may be interrupted by NoSuchMethodError exception. |
已从此接口中删除抽象方法 disableTableAsync(TableName)。 | A client program may be interrupted by NoSuchMethodError exception. |
已从此接口中删除抽象方法 enableTableAsync(TableName)。 | A client program may be interrupted by NoSuchMethodError exception. |
已从此接口中删除抽象方法 getCompactionState(TableName)。 | A client program may be interrupted by NoSuchMethodError exception. |
已从此接口中删除抽象方法 getCompactionStateForRegion(byte [])。 | A client program may be interrupted by NoSuchMethodError exception. |
抽象方法 isSnapshotFinished(HBaseProtos.SnapshotDescription)已从此界面中删除。 | A client program may be interrupted by NoSuchMethodError exception. |
已从此界面中删除抽象方法 snapshot(String,TableName,HBaseProtos.SnapshotDescription.Type)。 | A client program may be interrupted by NoSuchMethodError exception. |
已从此界面中删除抽象方法快照(HBaseProtos.SnapshotDescription)。 | A client program may be interrupted by NoSuchMethodError exception. |
已从此接口中删除抽象方法 takeSnapshotAsync(HBaseProtos.SnapshotDescription)。 | A client program may be interrupted by NoSuchMethodError exception. |
以下是对 Admin.class 的更改:hbase-client-1.0.0.jar,Admin.class 包 org.apache.hadoop.hbase.client
组织/阿帕奇/ hadoop 的/ HBase 的/客户端/ Admin.createTableAsync:(Lorg /阿帕奇/ hadoop 的/ HBase 的/ HTableDescriptor; [[B)V
Change | Result |
---|---|
返回值类型已从 void 更改为 java.util.concurrent.Future <java.lang.void>。</java.lang.void> | This method has been removed because the return type is part of the method signature. A client program may be interrupted by NoSuchMethodError exception. |
组织/阿帕奇/ hadoop 的/ HBase 的/客户端/ Admin.disableTableAsync:(Lorg /阿帕奇/ hadoop 的/ HBase 的/表名;)V
Change | Result |
---|---|
Return value type has been changed from void to java.util.concurrent.Future<java.lang.void>.</java.lang.void> | This method has been removed because the return type is part of the method signature. A client program may be interrupted by NoSuchMethodError exception. |
组织/阿帕奇/ hadoop 的/ HBase 的/客户端/ Admin.enableTableAsync:(Lorg /阿帕奇/ hadoop 的/ HBase 的/表名;)V
Change | Result |
---|---|
Return value type has been changed from void to java.util.concurrent.Future<java.lang.void>.</java.lang.void> | This method has been removed because the return type is part of the method signature. A client program may be interrupted by NoSuchMethodError exception. |
组织/阿帕奇/ hadoop 的/ HBase 的/客户端/ Admin.getCompactionState:(Lorg /阿帕奇/ hadoop 的/ HBase 的/表名)Lorg /阿帕奇/ hadoop 的/ HBase 的/ protobuf 的/生成/ AdminProtos $ $ GetRegionInfoResponse CompactionState;
Change | Result |
---|---|
返回值类型已从 org.apache.hadoop.hbase.protobuf.generated.AdminProtos.GetRegionInfoResponse.CompactionState 更改为 CompactionState。 | This method has been removed because the return type is part of the method signature. A client program may be interrupted by NoSuchMethodError exception. |
组织/阿帕奇/ hadoop 的/ HBase 的/客户端/ Admin.getCompactionStateForRegion:([B)Lorg /阿帕奇/ hadoop 的/ HBase 的/ protobuf 的/生成/ AdminProtos $ $ GetRegionInfoResponse CompactionState;
Change | Result |
---|---|
Return value type has been changed from org.apache.hadoop.hbase.protobuf.generated.AdminProtos.GetRegionInfoResponse.CompactionState to CompactionState. | This method has been removed because the return type is part of the method signature. A client program may be interrupted by NoSuchMethodError exception. |
HTableDescriptor 和 HColumnDescriptor 已成为接口,您可以通过 Builders 创建它。 HCD 已成为 CFD。它不再实现可写接口。包 org.apache.hadoop.hbase
Change | Result |
---|---|
删除了超级接口 org.apache.hadoop.io.WritableComparable <hcolumndescriptor>。</hcolumndescriptor> | A client program may be interrupted by NoSuchMethodError exception. |
HColumnDescriptor in 1.0.0 {code} @ InterfaceAudience.Public @ InterfaceStability.Evolving public class HColumnDescriptor 实现 WritableComparable <hcolumndescriptor>{{code}</hcolumndescriptor>
HColumnDescriptor in 2.0 {code} @ InterfaceAudience.Public @Deprecated //在 3.0 公共类中删除它 HColumnDescriptor 实现 ColumnFamilyDescriptor,Comparable <hcolumndescriptor>{{code}</hcolumndescriptor>
对于 META_TABLEDESC,制造商方法已在 1.0.0 中的 HTD 中弃用。 OWNER_KEY 仍处于 HTD 状态。
Change | Result |
---|---|
删除了超级接口 org.apache.hadoop.io.WritableComparable <htabledescriptor>。</htabledescriptor> | A client program may be interrupted by NoSuchMethodError exception. |
已从此类中删除了类型为 HTableDescriptor 的字段 META_TABLEDESC。 | A client program may be interrupted by NoSuchFieldError exception. |
hbase-client-1.0.0.jar,HTableDescriptor.class 包 org.apache.hadoop.hbase
组织/阿帕奇/ hadoop 的/ HBase 的/ HTableDescriptor.getColumnFamilies:()[Lorg /阿帕奇/ hadoop 的/ HBase 的/ HColumnDescriptor;
Change | Result |
---|---|
返回值类型已从 HColumnDescriptor []更改为 client.ColumnFamilyDescriptor []。 | This method has been removed because the return type is part of the method signature. A client program may be interrupted by NoSuchMethodError exception. |
组织/阿帕奇/ hadoop 的/ HBase 的/ HTableDescriptor.getCoprocessors :()Ljava / util 的/列表;
Change | Result |
---|---|
返回值类型已从 java.util.List <java.lang.string>更改为 java.util.Collection。</java.lang.string> | This method has been removed because the return type is part of the method signature. A client program may be interrupted by NoSuchMethodError exception. |
hbase-server-1.0.0.jar,HTableWrapper.class 包 org.apache.hadoop.hbase.client
组织/阿帕奇/的 Hadoop / HBase 的/客户/ HTableWrapper.createWrapper:(Ljava / UTIL /列表; Lorg /阿帕奇/的 Hadoop / HBase 的/表名; Lorg /阿帕奇/的 Hadoop / HBase 的/协/ CoprocessorHost $环境; Ljava / UTIL /并发/ ExecutorService 的;)Lorg /阿帕奇/ hadoop 的/ HBase 的/客户/ HTableInterface;
Change | Result |
---|---|
返回值类型已从 HTableInterface 更改为 Table。 | This method has been removed because the return type is part of the method signature. A client program may be interrupted by NoSuchMethodError exception. |
HBASE-12586:删除所有公共 HTable 构造函数并删除 ConnectionManager#{delete,get} Connection。
HBASE-9117:删除 HTablePool 和所有与