[jira] [Updated] (HADOOP-14389) Exception handling is incorrect in KerberosName.java
[ https://issues.apache.org/jira/browse/HADOOP-14389?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Shilun Fan updated HADOOP-14389: Target Version/s: 3.5.0 (was: 3.4.0) > Exception handling is incorrect in KerberosName.java > > > Key: HADOOP-14389 > URL: https://issues.apache.org/jira/browse/HADOOP-14389 > Project: Hadoop Common > Issue Type: Bug >Reporter: Andras Bokor >Assignee: Andras Bokor >Priority: Major > Labels: supportability > Attachments: HADOOP-14389.01.patch, HADOOP-14389.02.patch, > HADOOP-14389.03.patch > > > I found multiple inconsistency: > Rule: {{RULE:\[2:$1/$2\@$3\](.\*)s/.\*/hdfs/}} > Principal: {{nn/host.dom...@realm.tld}} > Expected exception: {{BadStringFormat: ...3 is out of range...}} > Actual exception: {{ArrayIndexOutOfBoundsException: 3}} > > Rule: {{RULE:\[:$1/$2\@$0](.\*)s/.\*/hdfs/}} (Missing num of components) > Expected: {{IllegalArgumentException}} > Actual: {{java.lang.NumberFormatException: For input string: ""}} > > Rule: {{RULE:\[2:$-1/$2\@$3\](.\*)s/.\*/hdfs/}} > Expected {{BadStringFormat: -1 is outside of valid range...}} > Actual: {{java.lang.NumberFormatException: For input string: ""}} > > Rule: {{RULE:\[2:$one/$2\@$3\](.\*)s/.\*/hdfs/}} > Expected {{java.lang.NumberFormatException: For input string: "one"}} > Acutal {{java.lang.NumberFormatException: For input string: ""}} > > In addtion: > {code}[^\\]]{code} > does not really make sense in {{ruleParser}}. Most probably it was needed > because we parse the whole rule string and remove the parsed rule from > beginning of the string: {{KerberosName#parseRules}}. This made the regex > engine parse wrong without it. > In addition: > In tests some corner cases are not covered. -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: common-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-issues-h...@hadoop.apache.org
[jira] [Updated] (HADOOP-14389) Exception handling is incorrect in KerberosName.java
[ https://issues.apache.org/jira/browse/HADOOP-14389?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Brahma Reddy Battula updated HADOOP-14389: -- Target Version/s: 3.4.0 (was: 3.3.0) Bulk update: moved all 3.3.0 non-blocker issues, please move back if it is a blocker. > Exception handling is incorrect in KerberosName.java > > > Key: HADOOP-14389 > URL: https://issues.apache.org/jira/browse/HADOOP-14389 > Project: Hadoop Common > Issue Type: Bug >Reporter: Andras Bokor >Assignee: Andras Bokor >Priority: Major > Labels: supportability > Attachments: HADOOP-14389.01.patch, HADOOP-14389.02.patch, > HADOOP-14389.03.patch > > > I found multiple inconsistency: > Rule: {{RULE:\[2:$1/$2\@$3\](.\*)s/.\*/hdfs/}} > Principal: {{nn/host.dom...@realm.tld}} > Expected exception: {{BadStringFormat: ...3 is out of range...}} > Actual exception: {{ArrayIndexOutOfBoundsException: 3}} > > Rule: {{RULE:\[:$1/$2\@$0](.\*)s/.\*/hdfs/}} (Missing num of components) > Expected: {{IllegalArgumentException}} > Actual: {{java.lang.NumberFormatException: For input string: ""}} > > Rule: {{RULE:\[2:$-1/$2\@$3\](.\*)s/.\*/hdfs/}} > Expected {{BadStringFormat: -1 is outside of valid range...}} > Actual: {{java.lang.NumberFormatException: For input string: ""}} > > Rule: {{RULE:\[2:$one/$2\@$3\](.\*)s/.\*/hdfs/}} > Expected {{java.lang.NumberFormatException: For input string: "one"}} > Acutal {{java.lang.NumberFormatException: For input string: ""}} > > In addtion: > {code}[^\\]]{code} > does not really make sense in {{ruleParser}}. Most probably it was needed > because we parse the whole rule string and remove the parsed rule from > beginning of the string: {{KerberosName#parseRules}}. This made the regex > engine parse wrong without it. > In addition: > In tests some corner cases are not covered. -- This message was sent by Atlassian Jira (v8.3.4#803005) - To unsubscribe, e-mail: common-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-issues-h...@hadoop.apache.org
[jira] [Updated] (HADOOP-14389) Exception handling is incorrect in KerberosName.java
[ https://issues.apache.org/jira/browse/HADOOP-14389?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andras Bokor updated HADOOP-14389: -- Attachment: HADOOP-14389.03.patch [~ste...@apache.org], The Hadoop QA's error was some docker issue os no rebase was needed. I uploaded the same patch to rekick hadoop QA. > Exception handling is incorrect in KerberosName.java > > > Key: HADOOP-14389 > URL: https://issues.apache.org/jira/browse/HADOOP-14389 > Project: Hadoop Common > Issue Type: Bug >Reporter: Andras Bokor >Assignee: Andras Bokor > Labels: supportability > Attachments: HADOOP-14389.01.patch, HADOOP-14389.02.patch, > HADOOP-14389.03.patch > > > I found multiple inconsistency: > Rule: {{RULE:\[2:$1/$2\@$3\](.\*)s/.\*/hdfs/}} > Principal: {{nn/host.dom...@realm.tld}} > Expected exception: {{BadStringFormat: ...3 is out of range...}} > Actual exception: {{ArrayIndexOutOfBoundsException: 3}} > > Rule: {{RULE:\[:$1/$2\@$0](.\*)s/.\*/hdfs/}} (Missing num of components) > Expected: {{IllegalArgumentException}} > Actual: {{java.lang.NumberFormatException: For input string: ""}} > > Rule: {{RULE:\[2:$-1/$2\@$3\](.\*)s/.\*/hdfs/}} > Expected {{BadStringFormat: -1 is outside of valid range...}} > Actual: {{java.lang.NumberFormatException: For input string: ""}} > > Rule: {{RULE:\[2:$one/$2\@$3\](.\*)s/.\*/hdfs/}} > Expected {{java.lang.NumberFormatException: For input string: "one"}} > Acutal {{java.lang.NumberFormatException: For input string: ""}} > > In addtion: > {code}[^\\]]{code} > does not really make sense in {{ruleParser}}. Most probably it was needed > because we parse the whole rule string and remove the parsed rule from > beginning of the string: {{KerberosName#parseRules}}. This made the regex > engine parse wrong without it. > In addition: > In tests some corner cases are not covered. -- This message was sent by Atlassian JIRA (v6.4.14#64029) - To unsubscribe, e-mail: common-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-issues-h...@hadoop.apache.org
[jira] [Updated] (HADOOP-14389) Exception handling is incorrect in KerberosName.java
[ https://issues.apache.org/jira/browse/HADOOP-14389?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andras Bokor updated HADOOP-14389: -- Attachment: HADOOP-14389.02.patch Thanks [~jzhuge] for looking into this. Since my patch guava version was downgraded to 11 by HADOOP-14386. I changed {{splitToList}} to {{split}} which has the same behavior but return Iterable instead of a List. Tests pass locally and I did a try on a Hadoop install: {code}/etc/hadoop-3.0.0-alpha4/bin/hadoop kerbname {nn,dn,rm,nm,jhs}/host.dom...@realm.tld Name: nn/host.dom...@realm.tld to hdfs Name: dn/host.dom...@realm.tld to hdfs Name: rm/host.dom...@realm.tld to yarn Name: nm/host.dom...@realm.tld to yarn Name: jhs/host.dom...@realm.tld to mapred{code} > Exception handling is incorrect in KerberosName.java > > > Key: HADOOP-14389 > URL: https://issues.apache.org/jira/browse/HADOOP-14389 > Project: Hadoop Common > Issue Type: Bug >Reporter: Andras Bokor >Assignee: Andras Bokor > Labels: supportability > Attachments: HADOOP-14389.01.patch, HADOOP-14389.02.patch > > > I found multiple inconsistency: > Rule: {{RULE:\[2:$1/$2\@$3\](.\*)s/.\*/hdfs/}} > Principal: {{nn/host.dom...@realm.tld}} > Expected exception: {{BadStringFormat: ...3 is out of range...}} > Actual exception: {{ArrayIndexOutOfBoundsException: 3}} > > Rule: {{RULE:\[:$1/$2\@$0](.\*)s/.\*/hdfs/}} (Missing num of components) > Expected: {{IllegalArgumentException}} > Actual: {{java.lang.NumberFormatException: For input string: ""}} > > Rule: {{RULE:\[2:$-1/$2\@$3\](.\*)s/.\*/hdfs/}} > Expected {{BadStringFormat: -1 is outside of valid range...}} > Actual: {{java.lang.NumberFormatException: For input string: ""}} > > Rule: {{RULE:\[2:$one/$2\@$3\](.\*)s/.\*/hdfs/}} > Expected {{java.lang.NumberFormatException: For input string: "one"}} > Acutal {{java.lang.NumberFormatException: For input string: ""}} > > In addtion: > {code}[^\\]]{code} > does not really make sense in {{ruleParser}}. Most probably it was needed > because we parse the whole rule string and remove the parsed rule from > beginning of the string: {{KerberosName#parseRules}}. This made the regex > engine parse wrong without it. > In addition: > In tests some corner cases are not covered. -- This message was sent by Atlassian JIRA (v6.4.14#64029) - To unsubscribe, e-mail: common-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-issues-h...@hadoop.apache.org
[jira] [Updated] (HADOOP-14389) Exception handling is incorrect in KerberosName.java
[ https://issues.apache.org/jira/browse/HADOOP-14389?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andras Bokor updated HADOOP-14389: -- Hadoop Flags: (was: Incompatible change) > Exception handling is incorrect in KerberosName.java > > > Key: HADOOP-14389 > URL: https://issues.apache.org/jira/browse/HADOOP-14389 > Project: Hadoop Common > Issue Type: Bug >Reporter: Andras Bokor >Assignee: Andras Bokor > Labels: supportability > Attachments: HADOOP-14389.01.patch, HADOOP-14389.02.patch > > > I found multiple inconsistency: > Rule: {{RULE:\[2:$1/$2\@$3\](.\*)s/.\*/hdfs/}} > Principal: {{nn/host.dom...@realm.tld}} > Expected exception: {{BadStringFormat: ...3 is out of range...}} > Actual exception: {{ArrayIndexOutOfBoundsException: 3}} > > Rule: {{RULE:\[:$1/$2\@$0](.\*)s/.\*/hdfs/}} (Missing num of components) > Expected: {{IllegalArgumentException}} > Actual: {{java.lang.NumberFormatException: For input string: ""}} > > Rule: {{RULE:\[2:$-1/$2\@$3\](.\*)s/.\*/hdfs/}} > Expected {{BadStringFormat: -1 is outside of valid range...}} > Actual: {{java.lang.NumberFormatException: For input string: ""}} > > Rule: {{RULE:\[2:$one/$2\@$3\](.\*)s/.\*/hdfs/}} > Expected {{java.lang.NumberFormatException: For input string: "one"}} > Acutal {{java.lang.NumberFormatException: For input string: ""}} > > In addtion: > {code}[^\\]]{code} > does not really make sense in {{ruleParser}}. Most probably it was needed > because we parse the whole rule string and remove the parsed rule from > beginning of the string: {{KerberosName#parseRules}}. This made the regex > engine parse wrong without it. > In addition: > In tests some corner cases are not covered. -- This message was sent by Atlassian JIRA (v6.4.14#64029) - To unsubscribe, e-mail: common-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-issues-h...@hadoop.apache.org
[jira] [Updated] (HADOOP-14389) Exception handling is incorrect in KerberosName.java
[ https://issues.apache.org/jira/browse/HADOOP-14389?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] John Zhuge updated HADOOP-14389: Labels: supportability (was: ) > Exception handling is incorrect in KerberosName.java > > > Key: HADOOP-14389 > URL: https://issues.apache.org/jira/browse/HADOOP-14389 > Project: Hadoop Common > Issue Type: Bug >Reporter: Andras Bokor >Assignee: Andras Bokor > Labels: supportability > Attachments: HADOOP-14389.01.patch > > > I found multiple inconsistency: > Rule: {{RULE:\[2:$1/$2\@$3\](.\*)s/.\*/hdfs/}} > Principal: {{nn/host.dom...@realm.tld}} > Expected exception: {{BadStringFormat: ...3 is out of range...}} > Actual exception: {{ArrayIndexOutOfBoundsException: 3}} > > Rule: {{RULE:\[:$1/$2\@$0](.\*)s/.\*/hdfs/}} (Missing num of components) > Expected: {{IllegalArgumentException}} > Actual: {{java.lang.NumberFormatException: For input string: ""}} > > Rule: {{RULE:\[2:$-1/$2\@$3\](.\*)s/.\*/hdfs/}} > Expected {{BadStringFormat: -1 is outside of valid range...}} > Actual: {{java.lang.NumberFormatException: For input string: ""}} > > Rule: {{RULE:\[2:$one/$2\@$3\](.\*)s/.\*/hdfs/}} > Expected {{java.lang.NumberFormatException: For input string: "one"}} > Acutal {{java.lang.NumberFormatException: For input string: ""}} > > In addtion: > {code}[^\\]]{code} > does not really make sense in {{ruleParser}}. Most probably it was needed > because we parse the whole rule string and remove the parsed rule from > beginning of the string: {{KerberosName#parseRules}}. This made the regex > engine parse wrong without it. > In addition: > In tests some corner cases are not covered. -- This message was sent by Atlassian JIRA (v6.4.14#64029) - To unsubscribe, e-mail: common-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-issues-h...@hadoop.apache.org
[jira] [Updated] (HADOOP-14389) Exception handling is incorrect in KerberosName.java
[ https://issues.apache.org/jira/browse/HADOOP-14389?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andras Bokor updated HADOOP-14389: -- Hadoop Flags: Incompatible change > Exception handling is incorrect in KerberosName.java > > > Key: HADOOP-14389 > URL: https://issues.apache.org/jira/browse/HADOOP-14389 > Project: Hadoop Common > Issue Type: Bug >Reporter: Andras Bokor >Assignee: Andras Bokor > Attachments: HADOOP-14389.01.patch > > > I found multiple inconsistency: > Rule: {{RULE:\[2:$1/$2\@$3\](.\*)s/.\*/hdfs/}} > Principal: {{nn/host.dom...@realm.tld}} > Expected exception: {{BadStringFormat: ...3 is out of range...}} > Actual exception: {{ArrayIndexOutOfBoundsException: 3}} > > Rule: {{RULE:\[:$1/$2\@$0](.\*)s/.\*/hdfs/}} (Missing num of components) > Expected: {{IllegalArgumentException}} > Actual: {{java.lang.NumberFormatException: For input string: ""}} > > Rule: {{RULE:\[2:$-1/$2\@$3\](.\*)s/.\*/hdfs/}} > Expected {{BadStringFormat: -1 is outside of valid range...}} > Actual: {{java.lang.NumberFormatException: For input string: ""}} > > Rule: {{RULE:\[2:$one/$2\@$3\](.\*)s/.\*/hdfs/}} > Expected {{java.lang.NumberFormatException: For input string: "one"}} > Acutal {{java.lang.NumberFormatException: For input string: ""}} > > In addtion: > {code}[^\\]]{code} > does not really make sense in {{ruleParser}}. Most probably it was needed > because we parse the whole rule string and remove the parsed rule from > beginning of the string: {{KerberosName#parseRules}}. This made the regex > engine parse wrong without it. > In addition: > In tests some corner cases are not covered. -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: common-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-issues-h...@hadoop.apache.org
[jira] [Updated] (HADOOP-14389) Exception handling is incorrect in KerberosName.java
[ https://issues.apache.org/jira/browse/HADOOP-14389?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andras Bokor updated HADOOP-14389: -- Status: Patch Available (was: Open) > Exception handling is incorrect in KerberosName.java > > > Key: HADOOP-14389 > URL: https://issues.apache.org/jira/browse/HADOOP-14389 > Project: Hadoop Common > Issue Type: Bug >Reporter: Andras Bokor >Assignee: Andras Bokor > Attachments: HADOOP-14389.01.patch > > > I found multiple inconsistency: > Rule: {{RULE:\[2:$1/$2\@$3\](.\*)s/.\*/hdfs/}} > Principal: {{nn/host.dom...@realm.tld}} > Expected exception: {{BadStringFormat: ...3 is out of range...}} > Actual exception: {{ArrayIndexOutOfBoundsException: 3}} > > Rule: {{RULE:\[:$1/$2\@$0](.\*)s/.\*/hdfs/}} (Missing num of components) > Expected: {{IllegalArgumentException}} > Actual: {{java.lang.NumberFormatException: For input string: ""}} > > Rule: {{RULE:\[2:$-1/$2\@$3\](.\*)s/.\*/hdfs/}} > Expected {{BadStringFormat: -1 is outside of valid range...}} > Actual: {{java.lang.NumberFormatException: For input string: ""}} > > Rule: {{RULE:\[2:$one/$2\@$3\](.\*)s/.\*/hdfs/}} > Expected {{java.lang.NumberFormatException: For input string: "one"}} > Acutal {{java.lang.NumberFormatException: For input string: ""}} > > In addtion: > {code}[^\\]]{code} > does not really make sense in {{ruleParser}}. Most probably it was needed > because we parse the whole rule string and remove the parsed rule from > beginning of the string: {{KerberosName#parseRules}}. This made the regex > engine parse wrong without it. > In addition: > In tests some corner cases are not covered. -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: common-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-issues-h...@hadoop.apache.org
[jira] [Updated] (HADOOP-14389) Exception handling is incorrect in KerberosName.java
[ https://issues.apache.org/jira/browse/HADOOP-14389?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andras Bokor updated HADOOP-14389: -- Attachment: HADOOP-14389.01.patch I have addressed the wrong exceptions with fixing {{KerberosName.Rule#replaceParameters}} and making {{ruleParser}} stricter. bq. \[^\\\]\] does not really make sense Can be removed by changing some logic in {{KerberosName#parseRules}}. It splits the rules by new lines. This also fixes an error message issue. So far in case of error it logged the {{remaining}} which contains all the rules. According to the new logic it logs only the rule which throws the exception. bq. In tests some corner cases are not covered. I have added all the test cases that came into my mind. Also I built and replaced hadoop-auth jar on a test cluster. {code}root@abokor-practice-5:/etc/hadoop-3.0.0-alpha2# /etc/hadoop-3.0.0-alpha2/bin/hadoop kerbname {nn,dn,rm,nm,jhs}/host.dom...@realm.tld Name: nn/host.dom...@realm.tld to hdfs Name: dn/host.dom...@realm.tld to hdfs Name: rm/host.dom...@realm.tld to yarn Name: nm/host.dom...@realm.tld to yarn Name: jhs/host.dom...@realm.tld to mapred{code} > Exception handling is incorrect in KerberosName.java > > > Key: HADOOP-14389 > URL: https://issues.apache.org/jira/browse/HADOOP-14389 > Project: Hadoop Common > Issue Type: Bug >Reporter: Andras Bokor >Assignee: Andras Bokor > Attachments: HADOOP-14389.01.patch > > > I found multiple inconsistency: > Rule: {{RULE:\[2:$1/$2\@$3\](.\*)s/.\*/hdfs/}} > Principal: {{nn/host.dom...@realm.tld}} > Expected exception: {{BadStringFormat: ...3 is out of range...}} > Actual exception: {{ArrayIndexOutOfBoundsException: 3}} > > Rule: {{RULE:\[:$1/$2\@$0](.\*)s/.\*/hdfs/}} (Missing num of components) > Expected: {{IllegalArgumentException}} > Actual: {{java.lang.NumberFormatException: For input string: ""}} > > Rule: {{RULE:\[2:$-1/$2\@$3\](.\*)s/.\*/hdfs/}} > Expected {{BadStringFormat: -1 is outside of valid range...}} > Actual: {{java.lang.NumberFormatException: For input string: ""}} > > Rule: {{RULE:\[2:$one/$2\@$3\](.\*)s/.\*/hdfs/}} > Expected {{java.lang.NumberFormatException: For input string: "one"}} > Acutal {{java.lang.NumberFormatException: For input string: ""}} > > In addtion: > {code}[^\\]]{code} > does not really make sense in {{ruleParser}}. Most probably it was needed > because we parse the whole rule string and remove the parsed rule from > beginning of the string: {{KerberosName#parseRules}}. This made the regex > engine parse wrong without it. > In addition: > In tests some corner cases are not covered. -- This message was sent by Atlassian JIRA (v6.3.15#6346) - To unsubscribe, e-mail: common-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-issues-h...@hadoop.apache.org