[jira] [Commented] (HBASE-21066) Improve isTableState() method to ensure caller gets correct info

2018-08-17 Thread Hadoop QA (JIRA)


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

Hadoop QA commented on HBASE-21066:
---

| (x) *{color:red}-1 overall{color}* |
\\
\\
|| Vote || Subsystem || Runtime || Comment ||
| {color:blue}0{color} | {color:blue} reexec {color} | {color:blue}  0m 
10s{color} | {color:blue} Docker mode activated. {color} |
|| || || || {color:brown} Prechecks {color} ||
| {color:green}+1{color} | {color:green} hbaseanti {color} | {color:green}  0m  
0s{color} | {color:green} Patch does not have any anti-patterns. {color} |
| {color:green}+1{color} | {color:green} @author {color} | {color:green}  0m  
0s{color} | {color:green} The patch does not contain any @author tags. {color} |
| {color:orange}-0{color} | {color:orange} test4tests {color} | {color:orange}  
0m  0s{color} | {color:orange} The patch doesn't appear to include any new or 
modified tests. Please justify why no new tests are needed for this patch. Also 
please list what manual steps were performed to verify this patch. {color} |
|| || || || {color:brown} master Compile Tests {color} ||
| {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue}  0m 
13s{color} | {color:blue} Maven dependency ordering for branch {color} |
| {color:green}+1{color} | {color:green} mvninstall {color} | {color:green}  3m 
59s{color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} compile {color} | {color:green}  2m 
29s{color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} checkstyle {color} | {color:green}  1m 
25s{color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} shadedjars {color} | {color:green}  4m 
20s{color} | {color:green} branch has no errors when building our shaded 
downstream artifacts. {color} |
| {color:green}+1{color} | {color:green} findbugs {color} | {color:green}  2m 
44s{color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} javadoc {color} | {color:green}  0m 
48s{color} | {color:green} master passed {color} |
|| || || || {color:brown} Patch Compile Tests {color} ||
| {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue}  0m 
14s{color} | {color:blue} Maven dependency ordering for patch {color} |
| {color:green}+1{color} | {color:green} mvninstall {color} | {color:green}  3m 
59s{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} compile {color} | {color:green}  2m 
33s{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} javac {color} | {color:green}  2m 
33s{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} checkstyle {color} | {color:green}  1m 
28s{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} whitespace {color} | {color:green}  0m 
 0s{color} | {color:green} The patch has no whitespace issues. {color} |
| {color:green}+1{color} | {color:green} shadedjars {color} | {color:green}  4m 
22s{color} | {color:green} patch has no errors when building our shaded 
downstream artifacts. {color} |
| {color:green}+1{color} | {color:green} hadoopcheck {color} | {color:green}  
7m 55s{color} | {color:green} Patch does not cause any errors with Hadoop 2.7.4 
or 3.0.0. {color} |
| {color:green}+1{color} | {color:green} findbugs {color} | {color:green}  3m  
3s{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} javadoc {color} | {color:green}  0m 
47s{color} | {color:green} the patch passed {color} |
|| || || || {color:brown} Other Tests {color} ||
| {color:red}-1{color} | {color:red} unit {color} | {color:red}141m 38s{color} 
| {color:red} hbase-server in the patch failed. {color} |
| {color:red}-1{color} | {color:red} unit {color} | {color:red}  6m 27s{color} 
| {color:red} hbase-rsgroup in the patch failed. {color} |
| {color:green}+1{color} | {color:green} asflicense {color} | {color:green}  0m 
44s{color} | {color:green} The patch does not generate ASF License warnings. 
{color} |
| {color:black}{color} | {color:black} {color} | {color:black}189m 58s{color} | 
{color:black} {color} |
\\
\\
|| Reason || Tests ||
| Failed junit tests | hadoop.hbase.master.procedure.TestTruncateTableProcedure 
|
|   | hadoop.hbase.master.procedure.TestMasterFailoverWithProcedures |
|   | hadoop.hbase.master.procedure.TestCloneSnapshotProcedure |
|   | hadoop.hbase.master.procedure.TestCreateTableProcedure |
|   | hadoop.hbase.rsgroup.TestRSGroups |
|   | hadoop.hbase.rsgroup.TestRSGroupsWithACL |
|   | hadoop.hbase.rsgroup.TestRSGroupsOfflineMode |
\\
\\
|| Subsystem || Report/Notes ||
| Docker | Client=17.05.0-ce Server=17.05.0-ce Image:yetus/hbase:b002b0b |
| JIRA Issue | HBASE-21066 |
| JIRA Patch URL | 
https://issues.apache.org/jira/secure/attachment/12936092/HBASE-210

[jira] [Commented] (HBASE-21066) Improve isTableState() method to ensure caller gets correct info

2018-08-17 Thread stack (JIRA)


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

stack commented on HBASE-21066:
---

[~xucang] should we resolve as won't fix then? Thanks

> Improve isTableState() method to ensure caller gets correct info
> 
>
> Key: HBASE-21066
> URL: https://issues.apache.org/jira/browse/HBASE-21066
> Project: HBase
>  Issue Type: Improvement
>Affects Versions: 3.0.0, 1.3.0, 2.0.0
>Reporter: Xu Cang
>Priority: Minor
> Attachments: HBASE-21066.master.001.patch, 
> HBASE-21066.master.002.patch
>
>
>  
> {code:java}
> public boolean isTableState(TableName tableName, TableState.State... states) {
>  try {
>  TableState tableState = getTableState(tableName);
>  return tableState.isInStates(states);
>  } catch (IOException e) {
>  LOG.error("Unable to get table " + tableName + " state", e);
>  // XXX: is it safe to just return false here?
>  return false;
>  }
>  }
>  
> {code}
>  
> When cannot get table state, returning false is not always safe or correct.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (HBASE-21066) Improve isTableState() method to ensure caller gets correct info

2018-08-17 Thread Xu Cang (JIRA)


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

Xu Cang commented on HBASE-21066:
-

Reviewed HBASE-7767 and the ways we are using this method. I changed my mind 
and thinking catching exception here and return false is a good solution. 

The semantic for #isTableState is: "Return true if the table is in these 
states, otherwise return false."

For method #isTableDisabled, it's similar, "Return true when the table is 
indeed disabled, return false when table state is not disabled. (could be 
enabled or unknown)"

I am canceling the patch for this issue. Though HBASE-20690 is still valid, 
possible to improve something for that.

 

 

> Improve isTableState() method to ensure caller gets correct info
> 
>
> Key: HBASE-21066
> URL: https://issues.apache.org/jira/browse/HBASE-21066
> Project: HBase
>  Issue Type: Improvement
>Affects Versions: 3.0.0, 1.3.0, 2.0.0
>Reporter: Xu Cang
>Priority: Minor
> Attachments: HBASE-21066.master.001.patch, 
> HBASE-21066.master.002.patch
>
>
>  
> {code:java}
> public boolean isTableState(TableName tableName, TableState.State... states) {
>  try {
>  TableState tableState = getTableState(tableName);
>  return tableState.isInStates(states);
>  } catch (IOException e) {
>  LOG.error("Unable to get table " + tableName + " state", e);
>  // XXX: is it safe to just return false here?
>  return false;
>  }
>  }
>  
> {code}
>  
> When cannot get table state, returning false is not always safe or correct.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (HBASE-21066) Improve isTableState() method to ensure caller gets correct info

2018-08-17 Thread stack (JIRA)


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

stack commented on HBASE-21066:
---

Thanks for working in this.  Is it right though converting all ioes into 
tablenotfoundexception?  At least add the ioe as the cause to the tnfe when 
throwing it? 

> Improve isTableState() method to ensure caller gets correct info
> 
>
> Key: HBASE-21066
> URL: https://issues.apache.org/jira/browse/HBASE-21066
> Project: HBase
>  Issue Type: Improvement
>Affects Versions: 3.0.0, 1.3.0, 2.0.0
>Reporter: Xu Cang
>Assignee: Xu Cang
>Priority: Minor
> Attachments: HBASE-21066.master.001.patch, 
> HBASE-21066.master.002.patch
>
>
>  
> {code:java}
> public boolean isTableState(TableName tableName, TableState.State... states) {
>  try {
>  TableState tableState = getTableState(tableName);
>  return tableState.isInStates(states);
>  } catch (IOException e) {
>  LOG.error("Unable to get table " + tableName + " state", e);
>  // XXX: is it safe to just return false here?
>  return false;
>  }
>  }
>  
> {code}
>  
> When cannot get table state, returning false is not always safe or correct.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (HBASE-21066) Improve isTableState() method to ensure caller gets correct info

2018-08-17 Thread Xu Cang (JIRA)


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

Xu Cang commented on HBASE-21066:
-

That's correct. I added 1.0 and 2.0 to affected versions.

The reason I created this new Jira is to fix this method and review the impact 
on all callers and modify related unit tests to accommodate this change. I plan 
to finish this patch and then the HBASE-20690 will be resolved.  I will make 
sure all related branches are covered. Thanks, [~apurtell]   Please let me know 
if you think I need to adjust something else.

> Improve isTableState() method to ensure caller gets correct info
> 
>
> Key: HBASE-21066
> URL: https://issues.apache.org/jira/browse/HBASE-21066
> Project: HBase
>  Issue Type: Improvement
>Affects Versions: 3.0.0, 1.3.0, 2.0.0
>Reporter: Xu Cang
>Assignee: Xu Cang
>Priority: Minor
> Attachments: HBASE-21066.master.001.patch
>
>
>  
> {code:java}
> public boolean isTableState(TableName tableName, TableState.State... states) {
>  try {
>  TableState tableState = getTableState(tableName);
>  return tableState.isInStates(states);
>  } catch (IOException e) {
>  LOG.error("Unable to get table " + tableName + " state", e);
>  // XXX: is it safe to just return false here?
>  return false;
>  }
>  }
>  
> {code}
>  
> When cannot get table state, returning false is not always safe or correct.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (HBASE-21066) Improve isTableState() method to ensure caller gets correct info

2018-08-17 Thread Andrew Purtell (JIRA)


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

Andrew Purtell commented on HBASE-21066:


Correct me if I'm wrong but this is an improvement that impacts RSGroups (I 
came here from HBASE-20690 Moving table to target rsgroup needs to handle 
TableStateNotFoundException), which is also in branch-1, so we should figure 
out something there too. 


> Improve isTableState() method to ensure caller gets correct info
> 
>
> Key: HBASE-21066
> URL: https://issues.apache.org/jira/browse/HBASE-21066
> Project: HBase
>  Issue Type: Improvement
>Affects Versions: 3.0.0
>Reporter: Xu Cang
>Assignee: Xu Cang
>Priority: Minor
> Attachments: HBASE-21066.master.001.patch
>
>
>  
> {code:java}
> public boolean isTableState(TableName tableName, TableState.State... states) {
>  try {
>  TableState tableState = getTableState(tableName);
>  return tableState.isInStates(states);
>  } catch (IOException e) {
>  LOG.error("Unable to get table " + tableName + " state", e);
>  // XXX: is it safe to just return false here?
>  return false;
>  }
>  }
>  
> {code}
>  
> When cannot get table state, returning false is not always safe or correct.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (HBASE-21066) Improve isTableState() method to ensure caller gets correct info

2018-08-17 Thread Xu Cang (JIRA)


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

Xu Cang commented on HBASE-21066:
-

some unit tests are failing, fixing...

> Improve isTableState() method to ensure caller gets correct info
> 
>
> Key: HBASE-21066
> URL: https://issues.apache.org/jira/browse/HBASE-21066
> Project: HBase
>  Issue Type: Improvement
>Affects Versions: 3.0.0
>Reporter: Xu Cang
>Assignee: Xu Cang
>Priority: Minor
> Attachments: HBASE-21066.master.001.patch
>
>
>  
> {code:java}
> public boolean isTableState(TableName tableName, TableState.State... states) {
>  try {
>  TableState tableState = getTableState(tableName);
>  return tableState.isInStates(states);
>  } catch (IOException e) {
>  LOG.error("Unable to get table " + tableName + " state", e);
>  // XXX: is it safe to just return false here?
>  return false;
>  }
>  }
>  
> {code}
>  
> When cannot get table state, returning false is not always safe or correct.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (HBASE-21066) Improve isTableState() method to ensure caller gets correct info

2018-08-17 Thread Hadoop QA (JIRA)


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

Hadoop QA commented on HBASE-21066:
---

| (x) *{color:red}-1 overall{color}* |
\\
\\
|| Vote || Subsystem || Runtime || Comment ||
| {color:blue}0{color} | {color:blue} reexec {color} | {color:blue}  0m 
12s{color} | {color:blue} Docker mode activated. {color} |
|| || || || {color:brown} Prechecks {color} ||
| {color:green}+1{color} | {color:green} hbaseanti {color} | {color:green}  0m  
0s{color} | {color:green} Patch does not have any anti-patterns. {color} |
| {color:green}+1{color} | {color:green} @author {color} | {color:green}  0m  
0s{color} | {color:green} The patch does not contain any @author tags. {color} |
| {color:orange}-0{color} | {color:orange} test4tests {color} | {color:orange}  
0m  0s{color} | {color:orange} The patch doesn't appear to include any new or 
modified tests. Please justify why no new tests are needed for this patch. Also 
please list what manual steps were performed to verify this patch. {color} |
|| || || || {color:brown} master Compile Tests {color} ||
| {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue}  1m 
15s{color} | {color:blue} Maven dependency ordering for branch {color} |
| {color:green}+1{color} | {color:green} mvninstall {color} | {color:green}  6m 
12s{color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} compile {color} | {color:green}  2m 
30s{color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} checkstyle {color} | {color:green}  1m 
28s{color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} shadedjars {color} | {color:green}  4m 
14s{color} | {color:green} branch has no errors when building our shaded 
downstream artifacts. {color} |
| {color:green}+1{color} | {color:green} findbugs {color} | {color:green}  3m  
4s{color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} javadoc {color} | {color:green}  0m 
53s{color} | {color:green} master passed {color} |
|| || || || {color:brown} Patch Compile Tests {color} ||
| {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue}  0m 
16s{color} | {color:blue} Maven dependency ordering for patch {color} |
| {color:green}+1{color} | {color:green} mvninstall {color} | {color:green}  3m 
36s{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} compile {color} | {color:green}  2m 
18s{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} javac {color} | {color:green}  2m 
18s{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} checkstyle {color} | {color:green}  1m 
24s{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} whitespace {color} | {color:green}  0m 
 0s{color} | {color:green} The patch has no whitespace issues. {color} |
| {color:green}+1{color} | {color:green} shadedjars {color} | {color:green}  4m 
16s{color} | {color:green} patch has no errors when building our shaded 
downstream artifacts. {color} |
| {color:green}+1{color} | {color:green} hadoopcheck {color} | {color:green}  
8m  1s{color} | {color:green} Patch does not cause any errors with Hadoop 2.7.4 
or 3.0.0. {color} |
| {color:green}+1{color} | {color:green} findbugs {color} | {color:green}  2m 
54s{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} javadoc {color} | {color:green}  0m 
46s{color} | {color:green} the patch passed {color} |
|| || || || {color:brown} Other Tests {color} ||
| {color:red}-1{color} | {color:red} unit {color} | {color:red}129m 33s{color} 
| {color:red} hbase-server in the patch failed. {color} |
| {color:red}-1{color} | {color:red} unit {color} | {color:red}  5m 39s{color} 
| {color:red} hbase-rsgroup in the patch failed. {color} |
| {color:green}+1{color} | {color:green} asflicense {color} | {color:green}  0m 
43s{color} | {color:green} The patch does not generate ASF License warnings. 
{color} |
| {color:black}{color} | {color:black} {color} | {color:black}179m 55s{color} | 
{color:black} {color} |
\\
\\
|| Reason || Tests ||
| Failed junit tests | hadoop.hbase.master.procedure.TestTruncateTableProcedure 
|
|   | hadoop.hbase.master.procedure.TestCreateTableProcedure |
|   | hadoop.hbase.master.procedure.TestMasterFailoverWithProcedures |
|   | hadoop.hbase.master.procedure.TestCloneSnapshotProcedure |
|   | hadoop.hbase.rsgroup.TestRSGroupsOfflineMode |
|   | hadoop.hbase.rsgroup.TestRSGroups |
|   | hadoop.hbase.rsgroup.TestRSGroupsWithACL |
\\
\\
|| Subsystem || Report/Notes ||
| Docker | Client=17.05.0-ce Server=17.05.0-ce Image:yetus/hbase:b002b0b |
| JIRA Issue | HBASE-21066 |
| JIRA Patch URL | 
https://issues.apache.org/jira/secure/attachment/12935998/HBASE-210

[jira] [Commented] (HBASE-21066) Improve isTableState() method to ensure caller gets correct info

2018-08-17 Thread Xu Cang (JIRA)


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

Xu Cang commented on HBASE-21066:
-

I plan to propagate possible IOException to callers of this method and let 
callers decide how to handle it. 

> Improve isTableState() method to ensure caller gets correct info
> 
>
> Key: HBASE-21066
> URL: https://issues.apache.org/jira/browse/HBASE-21066
> Project: HBase
>  Issue Type: Improvement
>Affects Versions: 3.0.0
>Reporter: Xu Cang
>Assignee: Xu Cang
>Priority: Minor
>
>  
> {code:java}
> public boolean isTableState(TableName tableName, TableState.State... states) {
>  try {
>  TableState tableState = getTableState(tableName);
>  return tableState.isInStates(states);
>  } catch (IOException e) {
>  LOG.error("Unable to get table " + tableName + " state", e);
>  // XXX: is it safe to just return false here?
>  return false;
>  }
>  }
>  
> {code}
>  
> When cannot get table state, returning false is not always safe or correct.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (HBASE-21066) Improve isTableState() method to ensure caller gets correct info

2018-08-17 Thread Xu Cang (JIRA)


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

Xu Cang commented on HBASE-21066:
-

related to : HBASE-20690

> Improve isTableState() method to ensure caller gets correct info
> 
>
> Key: HBASE-21066
> URL: https://issues.apache.org/jira/browse/HBASE-21066
> Project: HBase
>  Issue Type: Improvement
>Affects Versions: 3.0.0
>Reporter: Xu Cang
>Assignee: Xu Cang
>Priority: Minor
>
>  
> {code:java}
> public boolean isTableState(TableName tableName, TableState.State... states) {
>  try {
>  TableState tableState = getTableState(tableName);
>  return tableState.isInStates(states);
>  } catch (IOException e) {
>  LOG.error("Unable to get table " + tableName + " state", e);
>  // XXX: is it safe to just return false here?
>  return false;
>  }
>  }
>  
> {code}
>  
> When cannot get table state, returning false is not always safe or correct.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)