[ 
https://issues.apache.org/jira/browse/HBASE-19099?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16221045#comment-16221045
 ] 

Andrew Purtell edited comment on HBASE-19099 at 10/26/17 7:11 PM:
------------------------------------------------------------------

There are also changes to Store - add / removals. We previously discussed this 
and said they are ok, with feedback from the Phoenix project. 

 [−] interface Store  9 
        Change  Effect
1       Abstract method add ( Iterable<Cell> ) has been added to this 
interface.        Recompilation of a client program may be terminated with the 
message: a client class C is not abstract and does not override abstract method 
add ( Iterable<Cell> ) in Store.
2       Abstract method bulkLoadHFile ( byte[ ], String, Path ) has been added 
to this interface.       Recompilation of a client program may be terminated 
with the message: a client class C is not abstract and does not override 
abstract method bulkLoadHFile ( byte[ ], String, Path ) in Store.
3       Abstract method getScanners ( List<StoreFile>, boolean, boolean, 
boolean, boolean, ScanQueryMatcher, byte[ ], byte[ ], long, boolean ) has been 
added to this interface.        Recompilation of a client program may be 
terminated with the message: a client class C is not abstract and does not 
override abstract method getScanners ( List<StoreFile>, boolean, boolean, 
boolean, boolean, ScanQueryMatcher, byte[ ], byte[ ], long, boolean ) in Store.
4       Abstract method getScanners ( boolean, boolean, boolean, boolean, 
ScanQueryMatcher, byte[ ], byte[ ], long ) has been added to this interface.  
Recompilation of a client program may be terminated with the message: a client 
class C is not abstract and does not override abstract method getScanners ( 
boolean, boolean, boolean, boolean, ScanQueryMatcher, byte[ ], byte[ ], long ) 
in Store.
5       Abstract method upsert ( Iterable<Cell>, long, List<Cell> ) has been 
added to this interface.   Recompilation of a client program may be terminated 
with the message: a client class C is not abstract and does not override 
abstract method upsert ( Iterable<Cell>, long, List<Cell> ) in Store.
6       Abstract method bulkLoadHFile ( String, long ) has been removed from 
this interface.    Recompilation of a client program may be terminated with the 
message: cannot find method bulkLoadHFile ( String, long ) in interface Store.
7       Abstract method getScanners ( List<StoreFile>, boolean, boolean, 
boolean, boolean, ScanQueryMatcher, byte[ ], byte[ ], long, boolean ) has been 
removed from this interface.    Recompilation of a client program may be 
terminated with the message: cannot find method getScanners ( List<StoreFile>, 
boolean, boolean, boolean, boolean, ScanQueryMatcher, byte[ ], byte[ ], long, 
boolean ) in interface Store.
8       Abstract method getScanners ( boolean, boolean, boolean, boolean, 
ScanQueryMatcher, byte[ ], byte[ ], long ) has been removed from this 
interface.      Recompilation of a client program may be terminated with the 
message: cannot find method getScanners ( boolean, boolean, boolean, boolean, 
ScanQueryMatcher, byte[ ], byte[ ], long ) in interface Store.
9       Abstract method upsert ( Iterable<Cell>, long ) has been removed from 
this interface.

I will come back and edit this later to clean it up.


was (Author: apurtell):
There are also changes to Store - add / removals. We previously discussed this 
and said they are ok, with feedback from the Phoenix project. 

ed to this interface.   Recompilation of a client program may be terminated 
with the message: a client class C is not abstract and does not override 
abstract method bulkLoadHFile ( byte[ ], String, Path ) in Store.
3       Abstract method getScanners ( List<StoreFile>, boolean, boolean, 
boolean, boolean, ScanQueryMatcher, byte[ ], byte[ ], long, boolean ) has been 
added to this interface.        Recompilation of a client program may be 
terminated with the message: a client class C is not abstract and does not 
override abstract method getScanners ( List<StoreFile>, boolean, boolean, 
boolean, boolean, ScanQueryMatcher, byte[ ], byte[ ], long, boolean ) in Store.
4       Abstract method getScanners ( boolean, boolean, boolean, boolean, 
ScanQueryMatcher, byte[ ], byte[ ], long ) has been added to this interface.  
Recompilation of a client program may be terminated with the message: a client 
class C is not abstract and does not override abstract method getScanners ( 
boolean, boolean, boolean, boolean, ScanQueryMatcher, byte[ ], byte[ ], long ) 
in Store.
5       Abstract method upsert ( Iterable<Cell>, long, List<Cell> ) has been 
added to this interface.   Recompilation of a client program may be terminated 
with the message: a client class C is not abstract and does not override 
abstract method upsert ( Iterable<Cell>, long, List<Cell> ) in Store.
6       Abstract method bulkLoadHFile ( String, long ) has been removed from 
this interface.    Recompilation of a client program may be terminated with the 
message: cannot find method bulkLoadHFile ( String, long ) in interface Store.
7       Abstract method getScanners ( List<StoreFile>, boolean, boolean, 
boolean, boolean, ScanQueryMatcher, byte[ ], byte[ ], long, boolean ) has been 
removed from this interface.    Recompilation of a client program may be 
terminated with the message: cannot find method getScanners ( List<StoreFile>, 
boolean, boolean, boolean, boolean, ScanQueryMatcher, byte[ ], byte[ ], long, 
boolean ) in interface Store.
8       Abstract method getScanners ( boolean, boolean, boolean, boolean, 
ScanQueryMatcher, byte[ ], byte[ ], long ) has been removed from this 
interface.      Recompilation of a client program may be terminated with the 
message: cannot find method getScanners ( boolean, boolean, boolean, boolean, 
ScanQueryMatcher, byte[ ], byte[ ], long ) in interface Store.
9       Abstract method upsert ( Iterable<Cell>, long ) has been removed from 
this interface.

I will come back and edit this later to clean it up.

> Evaluate the remaining compatibility concerns between branch-1.3 and 
> branch-1.4 / branch-1
> ------------------------------------------------------------------------------------------
>
>                 Key: HBASE-19099
>                 URL: https://issues.apache.org/jira/browse/HBASE-19099
>             Project: HBase
>          Issue Type: Task
>    Affects Versions: 1.4.0, 1.5.0
>            Reporter: Andrew Purtell
>            Priority: Blocker
>             Fix For: 1.4.0, 1.5.0
>
>
> For discussion, here are the remaining compatibility concerns you will 
> encounter upon moving up from 1.3 to 1.4:
> package org.apache.hadoop.hbase.client
> interface Admin  8 
> * Abstract method clearDeadServers ( List<ServerName> ) has been added to 
> this interface.
> * Abstract method cloneSnapshot ( String, TableName, boolean ) has been added 
> to this interface.
> * Abstract method isCleanerChoreEnabled ( ) has been added to this interface.
> * Abstract method isMasterInMaintenanceMode ( ) has been added to this 
> interface.
> * Abstract method listDeadServers ( ) has been added to this interface.
> * Abstract method restoreSnapshot ( String, boolean, boolean ) has been added 
> to this interface.
> * Abstract method runCleanerChore ( ) has been added to this interface.
> * Abstract method setCleanerChoreRunning ( boolean ) has been added to this 
> interface.
> package org.apache.hadoop.hbase.client
> interface ResultScanner  2 
> * Abstract method renewLease ( ) has been added to this interface. 
> * Abstract method getScanMetrics ( ) has been added to this interface.
> package org.apache.hadoop.hbase.client
> interface Table
> * Abstract method getReadRpcTimeout ( ) has been added to this interface.
> * Abstract method getWriteRpcTimeout ( ) has been added to this interface.
> * Abstract method setReadRpcTimeout ( int ) has been added to this interface.
> * Abstract method setWriteRpcTimeout ( int ) has been added to this interface.
> package org.apache.hadoop.hbase.replication
> interface ReplicationPeer
> * Abstract method getPeerBandwidth ( ) has been added to this interface.
> * Abstract method trackPeerConfigChanges ( ReplicationPeerConfigListener ) 
> has been added to this interface.
> package org.apache.hadoop.hbase.coprocessor
> interface MasterCoprocessorEnvironment
> * Abstract method getMetricRegistryForMaster ( ) has been added to this 
> interface.
> interface MasterObserver  16 
> * Abstract method postAddRSGroup ( 
> ObserverContext<MasterCoprocessorEnvironment>, String ) has been added to 
> this interface. 
> * Abstract method postBalanceRSGroup ( 
> ObserverContext<MasterCoprocessorEnvironment>, String, boolean ) has been 
> added to this interface.
> * Abstract method postClearDeadServers ( 
> ObserverContext<MasterCoprocessorEnvironment> ) has been added to this 
> interface.    
> * Abstract method postListDeadServers ( 
> ObserverContext<MasterCoprocessorEnvironment> ) has been added to this 
> interface.
> * Abstract method postMoveServers ( 
> ObserverContext<MasterCoprocessorEnvironment>, Set<Address>, String ) has 
> been added to this interface.
> * Abstract method postMoveServersAndTables ( 
> ObserverContext<MasterCoprocessorEnvironment>, Set<Address>, Set<TableName>, 
> String ) has been added to this interface.
> * Abstract method postMoveTables ( 
> ObserverContext<MasterCoprocessorEnvironment>, Set<TableName>, String ) has 
> been added to this interface. 
> * Abstract method postRemoveRSGroup ( 
> ObserverContext<MasterCoprocessorEnvironment>, String ) has been added to 
> this interface.
> * Abstract method preAddRSGroup ( 
> ObserverContext<MasterCoprocessorEnvironment>, String ) has been added to 
> this interface. 
> * Abstract method preBalanceRSGroup ( 
> ObserverContext<MasterCoprocessorEnvironment>, String ) has been added to 
> this interface.
> * Abstract method preClearDeadServers ( 
> ObserverContext<MasterCoprocessorEnvironment> ) has been added to this 
> interface.
> * Abstract method preListDeadServers ( 
> ObserverContext<MasterCoprocessorEnvironment> ) has been added to this 
> interface. 
> * Abstract method preMoveServers ( 
> ObserverContext<MasterCoprocessorEnvironment>, Set<Address>, String ) has 
> been added to this interface. 
> * Abstract method preMoveServersAndTables ( 
> ObserverContext<MasterCoprocessorEnvironment>, Set<Address>, Set<TableName>, 
> String ) has been added to this interface.
> * Abstract method preMoveTables ( 
> ObserverContext<MasterCoprocessorEnvironment>, Set<TableName>, String ) has 
> been added to this interface.
> * Abstract method preRemoveRSGroup ( 
> ObserverContext<MasterCoprocessorEnvironment>, String ) has been added to 
> this interface.
> interface RegionCoprocessorEnvironment 
> * Abstract method getMetricRegistryForRegionServer ( ) has been added to this 
> interface.
> [−] interface RegionObserver
> * Abstract method postCommitStoreFile ( 
> ObserverContext<RegionCoprocessorEnvironment>, byte[ ], Path, Path ) has been 
> added to this interface.        
> * Abstract method preCommitStoreFile ( 
> ObserverContext<RegionCoprocessorEnvironment>, byte[ ], List<Pair<Path,Path>> 
> ) has been added to this interface. 
> * Abstract method preCompactScannerOpen ( 
> ObserverContext<RegionCoprocessorEnvironment>, Store, List<?>, ScanType, 
> long, InternalScanner, CompactionRequest, long ) has been added to this 
> interface.
> * Abstract method preFlushScannerOpen ( 
> ObserverContext<RegionCoprocessorEnvironment>, Store, KeyValueScanner, 
> InternalScanner, long ) has been added to this interface. 
> interface WALCoprocessorEnvironment 
> * Abstract method getMetricRegistryForRegionServer ( ) has been added to this 
> interface.      
> package org.apache.hadoop.hbase.ipc
> class RpcScheduler
> * Abstract method getActiveReadRpcHandlerCount ( ) has been added to this 
> class.
> * Abstract method getActiveScanRpcHandlerCount ( ) has been added to this 
> class. 
> * Abstract method getActiveWriteRpcHandlerCount ( ) has been added to this 
> class.     
> * Abstract method getReadQueueLength ( ) has been added to this class.
> * Abstract method getScanQueueLength ( ) has been added to this class. 
> * Abstract method getWriteQueueLength ( ) has been added to this class.
> package org.apache.hadoop.hbase.regionserver
> interface Region
> * Abstract method closeRegionOperation ( Region.Operation ) has been added to 
> this interface.         
>  * Abstract method waitForFlushes ( ) has been added to this interface.
> The above relate to source level compatibility. Recompilation of a client 
> program may be terminated with the message "client class C is not abstract 
> and does not override abstract method M in TYPE". According to our 
> compatibility guidelines we are allowed to add methods to interfaces, so 
> these are ALLOWED.  Please let me know if you disagree.
> ----
> package org.apache.hadoop.hbase.ipc
> class AsyncRpcClient
> AsyncRpcClient has been removed. It was not Public. This change is ALLOWED. 



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to