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

stack commented on HBASE-18622:
-------------------------------

Excluding protocol, shaded, and archetype and new jars like backup and rsgroup 
makes the output more manageable:

{code}
./dev-support/checkcompatibility.py -e .*hbase-rsgroup.* -e .*hbase-backup.* -e 
.*hbase-protoco.* -e .*hbase-shaded.* -e .*origina-hbase.* -e 
.*hbase-archetypes.* -e .*hbase-examples.* 
2f9b9e17d0522e36063bf52ecc58576243d20b3f 
fad968d99f4693278edcaefff92738e67ad8e8a0

Test Info
Library Name    hbase
Version #1      2f9b9e17d0522e36063bf52ecc58576243d20b3f
Version #2      fad968d99f4693278edcaefff92738e67ad8e8a0
Subject Binary Compatibility
Test Results
Total JARs      11
Total Methods / Classes 40212 / 3303
Compatibility   70.5%
Problem Summary
Severity        Count
Added Methods   -       12218
Removed Methods High    4140
Problems with
Data Types      High    688
Medium  243
Low     178
Problems with
Methods High    74
Medium  0
Low     79
Other Changes
in Data Types   -       878
Other Changes
in Methods      -       160
Added Methods  12218 
{code}

Admin branch-2 has 80 methods more than was in branch-1 Admin.

There are too many adds and removes to review.

Going over the methods flagged problematic, a good portion can be ignored since 
the class was InterfaceAudience Private in hbase-1.0; e.g. Call or 
ConnectionUtils.

We have a few methods that differ in signature in Admin. If we say hbase1 can't 
admin an hbase2 cluster, then we can let below slide:

{code}
hbase-client-1.2.6.jar, Admin.class
package org.apache.hadoop.hbase.client
[−] Admin.createTableAsync ( HTableDescriptor p1, byte[ ][ ] p2 ) [abstract]  : 
 void  1  
org/apache/hadoop/hbase/client/Admin.createTableAsync:(Lorg/apache/hadoop/hbase/HTableDescriptor;[[B)V
Change  Effect
1       Return value type has been changed from void to 
java.util.concurrent.Future<java.lang.Void>.    This method has been removed 
because the return type is part of the method signature.

[−] Admin.disableTableAsync ( TableName p1 ) [abstract]  :  void  1  
org/apache/hadoop/hbase/client/Admin.disableTableAsync:(Lorg/apache/hadoop/hbase/TableName;)V
Change  Effect
1       Return value type has been changed from void to 
java.util.concurrent.Future<java.lang.Void>.    This method has been removed 
because the return type is part of the method signature.

[−] Admin.enableTableAsync ( TableName p1 ) [abstract]  :  void  1  
org/apache/hadoop/hbase/client/Admin.enableTableAsync:(Lorg/apache/hadoop/hbase/TableName;)V
Change  Effect
1       Return value type has been changed from void to 
java.util.concurrent.Future<java.lang.Void>.    This method has been removed 
because the return type is part of the method signature.

{code}

Filing subtasks for violations found.

Got as far as: hbase-common-1.2.6.jar, CellComparator.class  Will be back.




> Mitigate compatibility concerns between branch-1 and branch-2
> -------------------------------------------------------------
>
>                 Key: HBASE-18622
>                 URL: https://issues.apache.org/jira/browse/HBASE-18622
>             Project: HBase
>          Issue Type: Bug
>          Components: API
>            Reporter: stack
>            Assignee: stack
>            Priority: Blocker
>             Fix For: 2.0.0-alpha-3
>
>
> This project is to do what [~apurtell] did in the issue "HBASE-18431 Mitigate 
> compatibility concerns between branch-1.3 and branch-1.4" only do it between 
> branch-1 and branch-2.



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

Reply via email to