[jira] [Commented] (HBASE-27246) RSGroupMappingScript#getRSGroup has thread safety problem

2022-08-24 Thread Hudson (Jira)


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

Hudson commented on HBASE-27246:


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

details (if available):

(/) {color:green}+1 general checks{color}
-- For more information [see general 
report|https://ci-hbase.apache.org/job/HBase%20Nightly/job/branch-2/626/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/626/JDK8_20Nightly_20Build_20Report_20_28Hadoop2_29/]


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


(x) {color:red}-1 jdk11 hadoop3 checks{color}
-- For more information [see jdk11 
report|https://ci-hbase.apache.org/job/HBase%20Nightly/job/branch-2/626/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}


> RSGroupMappingScript#getRSGroup has thread safety problem
> -
>
> Key: HBASE-27246
> URL: https://issues.apache.org/jira/browse/HBASE-27246
> Project: HBase
>  Issue Type: Bug
>  Components: rsgroup
>Reporter: Yutong Xiao
>Assignee: Yutong Xiao
>Priority: Major
> Fix For: 2.6.0, 2.5.1, 3.0.0-alpha-4, 2.4.15
>
> Attachments: Test.java, result.png
>
>
> We are using version 1.4.12 and met a problem in table creation phase some 
> time. The master branch also has this problem. The error message is:
> {code:java}
> 2022-07-26 19:26:20.122 [http-nio-8078-exec-24,d2ad4b13b542b6fb] ERROR 
> HBaseServiceImpl - hbase create table: xxx: failed. 
> (HBaseServiceImpl.java:116)
> java.lang.RuntimeException: 
> org.apache.hadoop.hbase.constraint.ConstraintException: 
> org.apache.hadoop.hbase.constraint.ConstraintException: Default RSGroup 
> (default
> default) for this table's namespace does not exist.
> {code}
> The rsgroup here should be one 'default' but not two consecutive 'default'.  
> The code to get RSGroup from a mapping script is:
> {code:java}
> String getRSGroup(String namespace, String tablename) {
>   if (rsgroupMappingScript == null) {
> return null;
>   }
>   String[] exec = rsgroupMappingScript.getExecString();
>   exec[1] = namespace;
>   exec[2] = tablename;
>   try {
> rsgroupMappingScript.execute();
>   } catch (IOException e) {
> // This exception may happen, like process doesn't have permission to 
> run this script.
> LOG.error("{}, placing {} back to default rsgroup", e.getMessage(),
>   TableName.valueOf(namespace, tablename));
> return RSGroupInfo.DEFAULT_GROUP;
>   }
>   return rsgroupMappingScript.getOutput().trim();
> }
> {code}
> here the rsgourpMappingScript could be executed by multi-threads.
> To test it is a multi-thread issue, I ran a piece of code locally and found 
> that the hadoop ShellCommandExecutor is not thread-safe (I run the code with 
> hadoop 2.10.0 and 3.3.2). So that we should make this method synchronized. 
> Besides, I found that this issue is retained in master branch also.
> The test code is attached and my rsgroup mapping script is very simple:
> {code:java}
> #!/bin/bash
> namespace=$1
> tablename=$2
> echo default
> {code}
> The reproduced screenshot is also attached.



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


[jira] [Commented] (HBASE-27246) RSGroupMappingScript#getRSGroup has thread safety problem

2022-08-24 Thread Hudson (Jira)


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

Hudson commented on HBASE-27246:


Results for branch branch-2.4
[build #416 on 
builds.a.o|https://ci-hbase.apache.org/job/HBase%20Nightly/job/branch-2.4/416/]:
 (/) *{color:green}+1 overall{color}*

details (if available):

(/) {color:green}+1 general checks{color}
-- For more information [see general 
report|https://ci-hbase.apache.org/job/HBase%20Nightly/job/branch-2.4/416/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.4/416/JDK8_20Nightly_20Build_20Report_20_28Hadoop2_29/]


(/) {color:green}+1 jdk8 hadoop3 checks{color}
-- For more information [see jdk8 (hadoop3) 
report|https://ci-hbase.apache.org/job/HBase%20Nightly/job/branch-2.4/416/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.4/416/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}


> RSGroupMappingScript#getRSGroup has thread safety problem
> -
>
> Key: HBASE-27246
> URL: https://issues.apache.org/jira/browse/HBASE-27246
> Project: HBase
>  Issue Type: Bug
>  Components: rsgroup
>Reporter: Yutong Xiao
>Assignee: Yutong Xiao
>Priority: Major
> Fix For: 2.6.0, 2.5.1, 3.0.0-alpha-4, 2.4.15
>
> Attachments: Test.java, result.png
>
>
> We are using version 1.4.12 and met a problem in table creation phase some 
> time. The master branch also has this problem. The error message is:
> {code:java}
> 2022-07-26 19:26:20.122 [http-nio-8078-exec-24,d2ad4b13b542b6fb] ERROR 
> HBaseServiceImpl - hbase create table: xxx: failed. 
> (HBaseServiceImpl.java:116)
> java.lang.RuntimeException: 
> org.apache.hadoop.hbase.constraint.ConstraintException: 
> org.apache.hadoop.hbase.constraint.ConstraintException: Default RSGroup 
> (default
> default) for this table's namespace does not exist.
> {code}
> The rsgroup here should be one 'default' but not two consecutive 'default'.  
> The code to get RSGroup from a mapping script is:
> {code:java}
> String getRSGroup(String namespace, String tablename) {
>   if (rsgroupMappingScript == null) {
> return null;
>   }
>   String[] exec = rsgroupMappingScript.getExecString();
>   exec[1] = namespace;
>   exec[2] = tablename;
>   try {
> rsgroupMappingScript.execute();
>   } catch (IOException e) {
> // This exception may happen, like process doesn't have permission to 
> run this script.
> LOG.error("{}, placing {} back to default rsgroup", e.getMessage(),
>   TableName.valueOf(namespace, tablename));
> return RSGroupInfo.DEFAULT_GROUP;
>   }
>   return rsgroupMappingScript.getOutput().trim();
> }
> {code}
> here the rsgourpMappingScript could be executed by multi-threads.
> To test it is a multi-thread issue, I ran a piece of code locally and found 
> that the hadoop ShellCommandExecutor is not thread-safe (I run the code with 
> hadoop 2.10.0 and 3.3.2). So that we should make this method synchronized. 
> Besides, I found that this issue is retained in master branch also.
> The test code is attached and my rsgroup mapping script is very simple:
> {code:java}
> #!/bin/bash
> namespace=$1
> tablename=$2
> echo default
> {code}
> The reproduced screenshot is also attached.



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


[jira] [Commented] (HBASE-27246) RSGroupMappingScript#getRSGroup has thread safety problem

2022-08-24 Thread Hudson (Jira)


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

Hudson commented on HBASE-27246:


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

details (if available):

(/) {color:green}+1 general checks{color}
-- For more information [see general 
report|https://ci-hbase.apache.org/job/HBase%20Nightly/job/master/665/General_20Nightly_20Build_20Report/]




(/) {color:green}+1 jdk8 hadoop3 checks{color}
-- For more information [see jdk8 (hadoop3) 
report|https://ci-hbase.apache.org/job/HBase%20Nightly/job/master/665/JDK8_20Nightly_20Build_20Report_20_28Hadoop3_29/]


(x) {color:red}-1 jdk11 hadoop3 checks{color}
-- For more information [see jdk11 
report|https://ci-hbase.apache.org/job/HBase%20Nightly/job/master/665/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}


> RSGroupMappingScript#getRSGroup has thread safety problem
> -
>
> Key: HBASE-27246
> URL: https://issues.apache.org/jira/browse/HBASE-27246
> Project: HBase
>  Issue Type: Bug
>  Components: rsgroup
>Reporter: Yutong Xiao
>Assignee: Yutong Xiao
>Priority: Major
> Fix For: 2.6.0, 2.5.1, 3.0.0-alpha-4, 2.4.15
>
> Attachments: Test.java, result.png
>
>
> We are using version 1.4.12 and met a problem in table creation phase some 
> time. The master branch also has this problem. The error message is:
> {code:java}
> 2022-07-26 19:26:20.122 [http-nio-8078-exec-24,d2ad4b13b542b6fb] ERROR 
> HBaseServiceImpl - hbase create table: xxx: failed. 
> (HBaseServiceImpl.java:116)
> java.lang.RuntimeException: 
> org.apache.hadoop.hbase.constraint.ConstraintException: 
> org.apache.hadoop.hbase.constraint.ConstraintException: Default RSGroup 
> (default
> default) for this table's namespace does not exist.
> {code}
> The rsgroup here should be one 'default' but not two consecutive 'default'.  
> The code to get RSGroup from a mapping script is:
> {code:java}
> String getRSGroup(String namespace, String tablename) {
>   if (rsgroupMappingScript == null) {
> return null;
>   }
>   String[] exec = rsgroupMappingScript.getExecString();
>   exec[1] = namespace;
>   exec[2] = tablename;
>   try {
> rsgroupMappingScript.execute();
>   } catch (IOException e) {
> // This exception may happen, like process doesn't have permission to 
> run this script.
> LOG.error("{}, placing {} back to default rsgroup", e.getMessage(),
>   TableName.valueOf(namespace, tablename));
> return RSGroupInfo.DEFAULT_GROUP;
>   }
>   return rsgroupMappingScript.getOutput().trim();
> }
> {code}
> here the rsgourpMappingScript could be executed by multi-threads.
> To test it is a multi-thread issue, I ran a piece of code locally and found 
> that the hadoop ShellCommandExecutor is not thread-safe (I run the code with 
> hadoop 2.10.0 and 3.3.2). So that we should make this method synchronized. 
> Besides, I found that this issue is retained in master branch also.
> The test code is attached and my rsgroup mapping script is very simple:
> {code:java}
> #!/bin/bash
> namespace=$1
> tablename=$2
> echo default
> {code}
> The reproduced screenshot is also attached.



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


[jira] [Commented] (HBASE-27246) RSGroupMappingScript#getRSGroup has thread safety problem

2022-08-24 Thread Hudson (Jira)


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

Hudson commented on HBASE-27246:


Results for branch branch-2.5
[build #194 on 
builds.a.o|https://ci-hbase.apache.org/job/HBase%20Nightly/job/branch-2.5/194/]:
 (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.5/194/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.5/194/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.5/194/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.5/194/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}


> RSGroupMappingScript#getRSGroup has thread safety problem
> -
>
> Key: HBASE-27246
> URL: https://issues.apache.org/jira/browse/HBASE-27246
> Project: HBase
>  Issue Type: Bug
>  Components: rsgroup
>Reporter: Yutong Xiao
>Assignee: Yutong Xiao
>Priority: Major
> Fix For: 2.6.0, 2.5.1, 3.0.0-alpha-4, 2.4.15
>
> Attachments: Test.java, result.png
>
>
> We are using version 1.4.12 and met a problem in table creation phase some 
> time. The master branch also has this problem. The error message is:
> {code:java}
> 2022-07-26 19:26:20.122 [http-nio-8078-exec-24,d2ad4b13b542b6fb] ERROR 
> HBaseServiceImpl - hbase create table: xxx: failed. 
> (HBaseServiceImpl.java:116)
> java.lang.RuntimeException: 
> org.apache.hadoop.hbase.constraint.ConstraintException: 
> org.apache.hadoop.hbase.constraint.ConstraintException: Default RSGroup 
> (default
> default) for this table's namespace does not exist.
> {code}
> The rsgroup here should be one 'default' but not two consecutive 'default'.  
> The code to get RSGroup from a mapping script is:
> {code:java}
> String getRSGroup(String namespace, String tablename) {
>   if (rsgroupMappingScript == null) {
> return null;
>   }
>   String[] exec = rsgroupMappingScript.getExecString();
>   exec[1] = namespace;
>   exec[2] = tablename;
>   try {
> rsgroupMappingScript.execute();
>   } catch (IOException e) {
> // This exception may happen, like process doesn't have permission to 
> run this script.
> LOG.error("{}, placing {} back to default rsgroup", e.getMessage(),
>   TableName.valueOf(namespace, tablename));
> return RSGroupInfo.DEFAULT_GROUP;
>   }
>   return rsgroupMappingScript.getOutput().trim();
> }
> {code}
> here the rsgourpMappingScript could be executed by multi-threads.
> To test it is a multi-thread issue, I ran a piece of code locally and found 
> that the hadoop ShellCommandExecutor is not thread-safe (I run the code with 
> hadoop 2.10.0 and 3.3.2). So that we should make this method synchronized. 
> Besides, I found that this issue is retained in master branch also.
> The test code is attached and my rsgroup mapping script is very simple:
> {code:java}
> #!/bin/bash
> namespace=$1
> tablename=$2
> echo default
> {code}
> The reproduced screenshot is also attached.



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


[jira] [Commented] (HBASE-27246) RSGroupMappingScript#getRSGroup has thread safety problem

2022-08-24 Thread Huaxiang Sun (Jira)


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

Huaxiang Sun commented on HBASE-27246:
--

Move to 2.4.15 as 2.4.14RC1 has been built.

> RSGroupMappingScript#getRSGroup has thread safety problem
> -
>
> Key: HBASE-27246
> URL: https://issues.apache.org/jira/browse/HBASE-27246
> Project: HBase
>  Issue Type: Bug
>  Components: rsgroup
>Reporter: Yutong Xiao
>Assignee: Yutong Xiao
>Priority: Major
> Fix For: 2.6.0, 2.5.1, 3.0.0-alpha-4, 2.4.15
>
> Attachments: Test.java, result.png
>
>
> We are using version 1.4.12 and met a problem in table creation phase some 
> time. The master branch also has this problem. The error message is:
> {code:java}
> 2022-07-26 19:26:20.122 [http-nio-8078-exec-24,d2ad4b13b542b6fb] ERROR 
> HBaseServiceImpl - hbase create table: xxx: failed. 
> (HBaseServiceImpl.java:116)
> java.lang.RuntimeException: 
> org.apache.hadoop.hbase.constraint.ConstraintException: 
> org.apache.hadoop.hbase.constraint.ConstraintException: Default RSGroup 
> (default
> default) for this table's namespace does not exist.
> {code}
> The rsgroup here should be one 'default' but not two consecutive 'default'.  
> The code to get RSGroup from a mapping script is:
> {code:java}
> String getRSGroup(String namespace, String tablename) {
>   if (rsgroupMappingScript == null) {
> return null;
>   }
>   String[] exec = rsgroupMappingScript.getExecString();
>   exec[1] = namespace;
>   exec[2] = tablename;
>   try {
> rsgroupMappingScript.execute();
>   } catch (IOException e) {
> // This exception may happen, like process doesn't have permission to 
> run this script.
> LOG.error("{}, placing {} back to default rsgroup", e.getMessage(),
>   TableName.valueOf(namespace, tablename));
> return RSGroupInfo.DEFAULT_GROUP;
>   }
>   return rsgroupMappingScript.getOutput().trim();
> }
> {code}
> here the rsgourpMappingScript could be executed by multi-threads.
> To test it is a multi-thread issue, I ran a piece of code locally and found 
> that the hadoop ShellCommandExecutor is not thread-safe (I run the code with 
> hadoop 2.10.0 and 3.3.2). So that we should make this method synchronized. 
> Besides, I found that this issue is retained in master branch also.
> The test code is attached and my rsgroup mapping script is very simple:
> {code:java}
> #!/bin/bash
> namespace=$1
> tablename=$2
> echo default
> {code}
> The reproduced screenshot is also attached.



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