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

Hudson commented on HBASE-28481:
--------------------------------

Results for branch branch-2.6
        [build #90 on 
builds.a.o|https://ci-hbase.apache.org/job/HBase%20Nightly/job/branch-2.6/90/]: 
(x) *{color:red}-1 overall{color}*
----
details (if available):

(x) {color:red}-1 general checks{color}
-- For more information [see general 
report|https://ci-hbase.apache.org/job/HBase%20Nightly/job/branch-2.6/90/General_20Nightly_20Build_20Report/]


(/) {color:green}+1 jdk8 hadoop2 checks{color}
-- For more information [see jdk8 (hadoop2) 
report|https://ci-hbase.apache.org/job/HBase%20Nightly/job/branch-2.6/90/JDK8_20Nightly_20Build_20Report_20_28Hadoop2_29/]


(x) {color:red}-1 jdk8 hadoop3 checks{color}
-- For more information [see jdk8 (hadoop3) 
report|https://ci-hbase.apache.org/job/HBase%20Nightly/job/branch-2.6/90/JDK8_20Nightly_20Build_20Report_20_28Hadoop3_29/]


(/) {color:green}+1 jdk11 hadoop3 checks{color}
-- For more information [see jdk11 
report|https://ci-hbase.apache.org/job/HBase%20Nightly/job/branch-2.6/90/JDK11_20Nightly_20Build_20Report_20_28Hadoop3_29/]


(/) {color:green}+1 source release artifact{color}
-- See build output for details.


(/) {color:green}+1 client integration test{color}


> Prompting table already exists after failing to create table with many region 
> replications
> ------------------------------------------------------------------------------------------
>
>                 Key: HBASE-28481
>                 URL: https://issues.apache.org/jira/browse/HBASE-28481
>             Project: HBase
>          Issue Type: Bug
>    Affects Versions: 2.4.13
>         Environment: Centos
>            Reporter: guluo
>            Assignee: guluo
>            Priority: Major
>              Labels: pull-request-available
>             Fix For: 2.6.0, 2.4.18, 3.0.0-beta-2, 2.5.9
>
>
> Reproduction steps:
> {code:java}
> # Create table with 65537 region replications 
> # we would get errors as follow,  this step is no problem 
> hbase:005:0> create 't01', 'info', {REGION_REPLICATION => 65537} 
> ERROR: java.lang.IllegalArgumentException: ReplicaId cannot be greater 
> than65535 
> For usage try 'help "create"' 
> Took 0.7590 seconds{code}
> {code:java}
> # list, and found the table does not exist, as follow 
> hbase:006:0> list TABLE 
> 0 row(s) Took 0.0100 seconds 
> => []{code}
> {code:java}
> # we create this tale agin by the correct way 
> # we would get message that this table already exists 
> hbase:007:0> create 't01', 'info' 
> ERROR: Table already exists: t01! 
> For usage try 'help "create"' 
> Took 0.1210 seconds {code}
>  
> Reason:
> In the CreateTableProcedure, we update this table descriptor into HBase 
> cluster at stage  CREATE_TABLE_WRITE_FS_LAYOUT
>  
> {code:java}
> env.getMasterServices().getTableDescriptors().update(tableDescriptor, true); 
> {code}
>  
> and then, we check if the Region Replication Count is legal at stage 
> CREATE_TABLE_ADD_TO_META.
>  
>  
> {code:java}
> newRegions = addTableToMeta(env, tableDescriptor, newRegions);
> // MutableRegionInfo.checkReplicaId 
> private static int checkReplicaId(int regionId) {     
>   if (regionId > MAX_REPLICA_ID) {         
>     throw new IllegalArgumentException("ReplicaId cannot be greater than" + 
>      MAX_REPLICA_ID);    
>    }     
> return regionId;
> }{code}
>  
>  
> So, we can not create the same name table by correct way after faling to 
> create table with many region replications (exceed 65536), because the table 
> descriptor has been updated into cluster and there is no rollback.
> So i think we can check if the region replication count at stage 
> CREATE_TABLE_PRE_OPERATION to avoid this problem



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to