[jira] [Commented] (HBASE-12716) A bug in RegionSplitter.UniformSplit algorithm
[ https://issues.apache.org/jira/browse/HBASE-12716?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14263087#comment-14263087 ] Hudson commented on HBASE-12716: SUCCESS: Integrated in HBase-1.0 #625 (See [https://builds.apache.org/job/HBase-1.0/625/]) HBASE-12716 A bug in RegionSplitter.UniformSplit algorithm (Weichen Ye) (tedyu: rev 0256cdd1b408d431170cc46711f2d9ad561b3ef2) * hbase-common/src/main/java/org/apache/hadoop/hbase/util/Bytes.java * hbase-common/src/test/java/org/apache/hadoop/hbase/util/TestBytes.java * hbase-server/src/test/java/org/apache/hadoop/hbase/util/TestRegionSplitter.java > A bug in RegionSplitter.UniformSplit algorithm > -- > > Key: HBASE-12716 > URL: https://issues.apache.org/jira/browse/HBASE-12716 > Project: HBase > Issue Type: Bug > Components: regionserver >Affects Versions: 2.0.0, 0.98.6 >Reporter: Weichen Ye >Assignee: Weichen Ye > Fix For: 1.0.0, 2.0.0, 0.98.10, 1.1.0 > > Attachments: HBASE-12716-v2.patch, HBASE-12716.patch > > > Welcome to the review board: https://reviews.apache.org/r/29424/diff/# > I`m working for another issues HBASE-12590 and trying to use the UniformSplit > algorithm in RegionSplitter. When the last bytes of start key and end key are > adjacent in alphabetical order or ASCII order, the UniformSplit algorithm > meet an NPE. > Like startkey: aaa, endkey :aab >startkey: endkey: 1112 > For example, we write this simple test code: > {code} > import org.apache.hadoop.hbase.util.RegionSplitter.UniformSplit; > .. > byte[] a1 = { 'a', 'a', 'a' }; > byte[] a2 = { 'a', 'a', 'b' }; > UniformSplit us = new UniformSplit(); > byte[] mid = us.split(a1, a2); > .. > {code} > We will get the ERROR: > {code} > Exception in thread "main" java.lang.NullPointerException > at > org.apache.hadoop.hbase.util.RegionSplitter$UniformSplit.split(RegionSplitter.java:986) > {code} > We hope this algorithm should be able to calculate the split point with an > additional byte. for example: > "aaa" and "aab", split point= "aaaP" > "" and "1112", split point ="P" > review board:https://reviews.apache.org/r/29424/ -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (HBASE-12716) A bug in RegionSplitter.UniformSplit algorithm
[ https://issues.apache.org/jira/browse/HBASE-12716?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14262833#comment-14262833 ] Hudson commented on HBASE-12716: FAILURE: Integrated in HBase-0.98-on-Hadoop-1.1 #737 (See [https://builds.apache.org/job/HBase-0.98-on-Hadoop-1.1/737/]) HBASE-12716 A bug in RegionSplitter.UniformSplit algorithm (Weichen Ye) (apurtell: rev 74f303ba2482b2f0c81260ee41cd0f94ef3105d8) * hbase-common/src/main/java/org/apache/hadoop/hbase/util/Bytes.java * hbase-common/src/test/java/org/apache/hadoop/hbase/util/TestBytes.java * hbase-server/src/test/java/org/apache/hadoop/hbase/util/TestRegionSplitter.java > A bug in RegionSplitter.UniformSplit algorithm > -- > > Key: HBASE-12716 > URL: https://issues.apache.org/jira/browse/HBASE-12716 > Project: HBase > Issue Type: Bug > Components: regionserver >Affects Versions: 2.0.0, 0.98.6 >Reporter: Weichen Ye >Assignee: Weichen Ye > Fix For: 2.0.0, 0.98.10, 1.1.0 > > Attachments: HBASE-12716-v2.patch, HBASE-12716.patch > > > Welcome to the review board: https://reviews.apache.org/r/29424/diff/# > I`m working for another issues HBASE-12590 and trying to use the UniformSplit > algorithm in RegionSplitter. When the last bytes of start key and end key are > adjacent in alphabetical order or ASCII order, the UniformSplit algorithm > meet an NPE. > Like startkey: aaa, endkey :aab >startkey: endkey: 1112 > For example, we write this simple test code: > {code} > import org.apache.hadoop.hbase.util.RegionSplitter.UniformSplit; > .. > byte[] a1 = { 'a', 'a', 'a' }; > byte[] a2 = { 'a', 'a', 'b' }; > UniformSplit us = new UniformSplit(); > byte[] mid = us.split(a1, a2); > .. > {code} > We will get the ERROR: > {code} > Exception in thread "main" java.lang.NullPointerException > at > org.apache.hadoop.hbase.util.RegionSplitter$UniformSplit.split(RegionSplitter.java:986) > {code} > We hope this algorithm should be able to calculate the split point with an > additional byte. for example: > "aaa" and "aab", split point= "aaaP" > "" and "1112", split point ="P" > review board:https://reviews.apache.org/r/29424/ -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (HBASE-12716) A bug in RegionSplitter.UniformSplit algorithm
[ https://issues.apache.org/jira/browse/HBASE-12716?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14262823#comment-14262823 ] Hudson commented on HBASE-12716: FAILURE: Integrated in HBase-0.98 #772 (See [https://builds.apache.org/job/HBase-0.98/772/]) HBASE-12716 A bug in RegionSplitter.UniformSplit algorithm (Weichen Ye) (apurtell: rev 74f303ba2482b2f0c81260ee41cd0f94ef3105d8) * hbase-common/src/test/java/org/apache/hadoop/hbase/util/TestBytes.java * hbase-server/src/test/java/org/apache/hadoop/hbase/util/TestRegionSplitter.java * hbase-common/src/main/java/org/apache/hadoop/hbase/util/Bytes.java > A bug in RegionSplitter.UniformSplit algorithm > -- > > Key: HBASE-12716 > URL: https://issues.apache.org/jira/browse/HBASE-12716 > Project: HBase > Issue Type: Bug > Components: regionserver >Affects Versions: 2.0.0, 0.98.6 >Reporter: Weichen Ye >Assignee: Weichen Ye > Fix For: 2.0.0, 0.98.10, 1.1.0 > > Attachments: HBASE-12716-v2.patch, HBASE-12716.patch > > > Welcome to the review board: https://reviews.apache.org/r/29424/diff/# > I`m working for another issues HBASE-12590 and trying to use the UniformSplit > algorithm in RegionSplitter. When the last bytes of start key and end key are > adjacent in alphabetical order or ASCII order, the UniformSplit algorithm > meet an NPE. > Like startkey: aaa, endkey :aab >startkey: endkey: 1112 > For example, we write this simple test code: > {code} > import org.apache.hadoop.hbase.util.RegionSplitter.UniformSplit; > .. > byte[] a1 = { 'a', 'a', 'a' }; > byte[] a2 = { 'a', 'a', 'b' }; > UniformSplit us = new UniformSplit(); > byte[] mid = us.split(a1, a2); > .. > {code} > We will get the ERROR: > {code} > Exception in thread "main" java.lang.NullPointerException > at > org.apache.hadoop.hbase.util.RegionSplitter$UniformSplit.split(RegionSplitter.java:986) > {code} > We hope this algorithm should be able to calculate the split point with an > additional byte. for example: > "aaa" and "aab", split point= "aaaP" > "" and "1112", split point ="P" > review board:https://reviews.apache.org/r/29424/ -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (HBASE-12716) A bug in RegionSplitter.UniformSplit algorithm
[ https://issues.apache.org/jira/browse/HBASE-12716?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14259777#comment-14259777 ] Weichen Ye commented on HBASE-12716: Thank you for your review and help :) > A bug in RegionSplitter.UniformSplit algorithm > -- > > Key: HBASE-12716 > URL: https://issues.apache.org/jira/browse/HBASE-12716 > Project: HBase > Issue Type: Bug > Components: regionserver >Affects Versions: 2.0.0, 0.98.6 >Reporter: Weichen Ye >Assignee: Weichen Ye > Fix For: 2.0.0, 1.1.0 > > Attachments: HBASE-12716-v2.patch, HBASE-12716.patch > > > Welcome to the review board: https://reviews.apache.org/r/29424/diff/# > I`m working for another issues HBASE-12590 and trying to use the UniformSplit > algorithm in RegionSplitter. When the last bytes of start key and end key are > adjacent in alphabetical order or ASCII order, the UniformSplit algorithm > meet an NPE. > Like startkey: aaa, endkey :aab >startkey: endkey: 1112 > For example, we write this simple test code: > {code} > import org.apache.hadoop.hbase.util.RegionSplitter.UniformSplit; > .. > byte[] a1 = { 'a', 'a', 'a' }; > byte[] a2 = { 'a', 'a', 'b' }; > UniformSplit us = new UniformSplit(); > byte[] mid = us.split(a1, a2); > .. > {code} > We will get the ERROR: > {code} > Exception in thread "main" java.lang.NullPointerException > at > org.apache.hadoop.hbase.util.RegionSplitter$UniformSplit.split(RegionSplitter.java:986) > {code} > We hope this algorithm should be able to calculate the split point with an > additional byte. for example: > "aaa" and "aab", split point= "aaaP" > "" and "1112", split point ="P" > review board:https://reviews.apache.org/r/29424/ -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (HBASE-12716) A bug in RegionSplitter.UniformSplit algorithm
[ https://issues.apache.org/jira/browse/HBASE-12716?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14259686#comment-14259686 ] Hudson commented on HBASE-12716: SUCCESS: Integrated in HBase-1.1 #29 (See [https://builds.apache.org/job/HBase-1.1/29/]) HBASE-12716 A bug in RegionSplitter.UniformSplit algorithm (Weichen Ye) (tedyu: rev 882f4c9761d9b94a600d1fe1d590f7e0a4e245f9) * hbase-server/src/test/java/org/apache/hadoop/hbase/util/TestRegionSplitter.java * hbase-common/src/test/java/org/apache/hadoop/hbase/util/TestBytes.java * hbase-common/src/main/java/org/apache/hadoop/hbase/util/Bytes.java > A bug in RegionSplitter.UniformSplit algorithm > -- > > Key: HBASE-12716 > URL: https://issues.apache.org/jira/browse/HBASE-12716 > Project: HBase > Issue Type: Bug > Components: regionserver >Affects Versions: 2.0.0, 0.98.6 >Reporter: Weichen Ye >Assignee: Weichen Ye > Fix For: 2.0.0, 1.1.0 > > Attachments: HBASE-12716-v2.patch, HBASE-12716.patch > > > Welcome to the review board: https://reviews.apache.org/r/29424/diff/# > I`m working for another issues HBASE-12590 and trying to use the UniformSplit > algorithm in RegionSplitter. When the last bytes of start key and end key are > adjacent in alphabetical order or ASCII order, the UniformSplit algorithm > meet an NPE. > Like startkey: aaa, endkey :aab >startkey: endkey: 1112 > For example, we write this simple test code: > {code} > import org.apache.hadoop.hbase.util.RegionSplitter.UniformSplit; > .. > byte[] a1 = { 'a', 'a', 'a' }; > byte[] a2 = { 'a', 'a', 'b' }; > UniformSplit us = new UniformSplit(); > byte[] mid = us.split(a1, a2); > .. > {code} > We will get the ERROR: > {code} > Exception in thread "main" java.lang.NullPointerException > at > org.apache.hadoop.hbase.util.RegionSplitter$UniformSplit.split(RegionSplitter.java:986) > {code} > We hope this algorithm should be able to calculate the split point with an > additional byte. for example: > "aaa" and "aab", split point= "aaaP" > "" and "1112", split point ="P" > review board:https://reviews.apache.org/r/29424/ -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (HBASE-12716) A bug in RegionSplitter.UniformSplit algorithm
[ https://issues.apache.org/jira/browse/HBASE-12716?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14259680#comment-14259680 ] Hudson commented on HBASE-12716: SUCCESS: Integrated in HBase-TRUNK #5970 (See [https://builds.apache.org/job/HBase-TRUNK/5970/]) HBASE-12716 A bug in RegionSplitter.UniformSplit algorithm (Weichen Ye) (tedyu: rev fbdaf62bf837abd74eca8b13e8786051ed4df38a) * hbase-common/src/main/java/org/apache/hadoop/hbase/util/Bytes.java * hbase-server/src/test/java/org/apache/hadoop/hbase/util/TestRegionSplitter.java * hbase-common/src/test/java/org/apache/hadoop/hbase/util/TestBytes.java > A bug in RegionSplitter.UniformSplit algorithm > -- > > Key: HBASE-12716 > URL: https://issues.apache.org/jira/browse/HBASE-12716 > Project: HBase > Issue Type: Bug > Components: regionserver >Affects Versions: 2.0.0, 0.98.6 >Reporter: Weichen Ye >Assignee: Weichen Ye > Fix For: 2.0.0, 1.1.0 > > Attachments: HBASE-12716-v2.patch, HBASE-12716.patch > > > Welcome to the review board: https://reviews.apache.org/r/29424/diff/# > I`m working for another issues HBASE-12590 and trying to use the UniformSplit > algorithm in RegionSplitter. When the last bytes of start key and end key are > adjacent in alphabetical order or ASCII order, the UniformSplit algorithm > meet an NPE. > Like startkey: aaa, endkey :aab >startkey: endkey: 1112 > For example, we write this simple test code: > {code} > import org.apache.hadoop.hbase.util.RegionSplitter.UniformSplit; > .. > byte[] a1 = { 'a', 'a', 'a' }; > byte[] a2 = { 'a', 'a', 'b' }; > UniformSplit us = new UniformSplit(); > byte[] mid = us.split(a1, a2); > .. > {code} > We will get the ERROR: > {code} > Exception in thread "main" java.lang.NullPointerException > at > org.apache.hadoop.hbase.util.RegionSplitter$UniformSplit.split(RegionSplitter.java:986) > {code} > We hope this algorithm should be able to calculate the split point with an > additional byte. for example: > "aaa" and "aab", split point= "aaaP" > "" and "1112", split point ="P" > review board:https://reviews.apache.org/r/29424/ -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (HBASE-12716) A bug in RegionSplitter.UniformSplit algorithm
[ https://issues.apache.org/jira/browse/HBASE-12716?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14259108#comment-14259108 ] Ted Yu commented on HBASE-12716: [~apurtell]: Do you want this in 0.98 ? > A bug in RegionSplitter.UniformSplit algorithm > -- > > Key: HBASE-12716 > URL: https://issues.apache.org/jira/browse/HBASE-12716 > Project: HBase > Issue Type: Bug > Components: regionserver >Affects Versions: 0.98.6 >Reporter: Weichen Ye >Assignee: Weichen Ye > Attachments: HBASE-12716-v2.patch, HBASE-12716.patch > > > I`m working for another issues HBASE-12590 and trying to use the UniformSplit > algorithm in RegionSplitter. When the last bytes of start key and end key are > adjacent in alphabetical order or ASCII order, the UniformSplit algorithm > meet an NPE. > Like startkey: aaa, endkey :aab >startkey: endkey: 1112 > For example, we write this simple test code: > {code} > import org.apache.hadoop.hbase.util.RegionSplitter.UniformSplit; > .. > byte[] a1 = { 'a', 'a', 'a' }; > byte[] a2 = { 'a', 'a', 'b' }; > UniformSplit us = new UniformSplit(); > byte[] mid = us.split(a1, a2); > .. > {code} > We will get the ERROR: > {code} > Exception in thread "main" java.lang.NullPointerException > at > org.apache.hadoop.hbase.util.RegionSplitter$UniformSplit.split(RegionSplitter.java:986) > {code} > We hope this algorithm should be able to calculate the split point with an > additional byte. for example: > "aaa" and "aab", split point= "aaaP" > "" and "1112", split point ="P" > review board:https://reviews.apache.org/r/29424/ -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (HBASE-12716) A bug in RegionSplitter.UniformSplit algorithm
[ https://issues.apache.org/jira/browse/HBASE-12716?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14259037#comment-14259037 ] Ted Yu commented on HBASE-12716: Lgtm > A bug in RegionSplitter.UniformSplit algorithm > -- > > Key: HBASE-12716 > URL: https://issues.apache.org/jira/browse/HBASE-12716 > Project: HBase > Issue Type: Bug > Components: regionserver >Affects Versions: 0.98.6 >Reporter: Weichen Ye >Assignee: Weichen Ye > Attachments: HBASE-12716-v2.patch, HBASE-12716.patch > > > I`m working for another issues HBASE-12590 and trying to use the UniformSplit > algorithm in RegionSplitter. When the last bytes of start key and end key are > adjacent in alphabetical order or ASCII order, the UniformSplit algorithm > meet an NPE. > Like startkey: aaa, endkey :aab >startkey: endkey: 1112 > For example, we write this simple test code: > {code} > import org.apache.hadoop.hbase.util.RegionSplitter.UniformSplit; > .. > byte[] a1 = { 'a', 'a', 'a' }; > byte[] a2 = { 'a', 'a', 'b' }; > UniformSplit us = new UniformSplit(); > byte[] mid = us.split(a1, a2); > .. > {code} > We will get the ERROR: > {code} > Exception in thread "main" java.lang.NullPointerException > at > org.apache.hadoop.hbase.util.RegionSplitter$UniformSplit.split(RegionSplitter.java:986) > {code} > We hope this algorithm should be able to calculate the split point with an > additional byte. for example: > "aaa" and "aab", split point= "aaaP" > "" and "1112", split point ="P" > review board:https://reviews.apache.org/r/29424/ -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (HBASE-12716) A bug in RegionSplitter.UniformSplit algorithm
[ https://issues.apache.org/jira/browse/HBASE-12716?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14259014#comment-14259014 ] Weichen Ye commented on HBASE-12716: Hi, [~te...@apache.org] I just upload a new patch and fix the test failure. This is a link to the review board, to make it easier to read the code. https://reviews.apache.org/r/29424/diff/# > A bug in RegionSplitter.UniformSplit algorithm > -- > > Key: HBASE-12716 > URL: https://issues.apache.org/jira/browse/HBASE-12716 > Project: HBase > Issue Type: Bug > Components: regionserver >Affects Versions: 0.98.6 >Reporter: Weichen Ye >Assignee: Weichen Ye > Attachments: HBASE-12716-v2.patch, HBASE-12716.patch > > > I`m working for another issues HBASE-12590 and trying to use the UniformSplit > algorithm in RegionSplitter. When the last bytes of start key and end key are > adjacent in alphabetical order or ASCII order, the UniformSplit algorithm > meet an NPE. > Like startkey: aaa, endkey :aab >startkey: endkey: 1112 > For example, we write this simple test code: > {code} > import org.apache.hadoop.hbase.util.RegionSplitter.UniformSplit; > .. > byte[] a1 = { 'a', 'a', 'a' }; > byte[] a2 = { 'a', 'a', 'b' }; > UniformSplit us = new UniformSplit(); > byte[] mid = us.split(a1, a2); > .. > {code} > We will get the ERROR: > {code} > Exception in thread "main" java.lang.NullPointerException > at > org.apache.hadoop.hbase.util.RegionSplitter$UniformSplit.split(RegionSplitter.java:986) > {code} > We hope this algorithm should be able to calculate the split point with an > additional byte. for example: > "aaa" and "aab", split point= "aaaP" > "" and "1112", split point ="P" > review board:https://reviews.apache.org/r/29424/ -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (HBASE-12716) A bug in RegionSplitter.UniformSplit algorithm
[ https://issues.apache.org/jira/browse/HBASE-12716?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14258988#comment-14258988 ] Hadoop QA commented on HBASE-12716: --- {color:green}+1 overall{color}. Here are the results of testing the latest attachment http://issues.apache.org/jira/secure/attachment/12689153/HBASE-12716-v2.patch against master branch at commit 30424ec73f7f100b233e27196c0a6a90abd62ad2. ATTACHMENT ID: 12689153 {color:green}+1 @author{color}. The patch does not contain any @author tags. {color:green}+1 tests included{color}. The patch appears to include 6 new or modified tests. {color:green}+1 javac{color}. The applied patch does not increase the total number of javac compiler warnings. {color:green}+1 javac{color}. The applied patch does not increase the total number of javac compiler warnings. {color:green}+1 javadoc{color}. The javadoc tool did not generate any warning messages. {color:green}+1 checkstyle{color}. The applied patch does not increase the total number of checkstyle errors {color:green}+1 findbugs{color}. The patch does not introduce any new Findbugs (version 2.0.3) warnings. {color:green}+1 release audit{color}. The applied patch does not increase the total number of release audit warnings. {color:green}+1 lineLengths{color}. The patch does not introduce lines longer than 100 {color:green}+1 site{color}. The mvn site goal succeeds with this patch. {color:green}+1 core tests{color}. The patch passed unit tests in . Test results: https://builds.apache.org/job/PreCommit-HBASE-Build/12226//testReport/ Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/12226//artifact/patchprocess/newPatchFindbugsWarningshbase-rest.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/12226//artifact/patchprocess/newPatchFindbugsWarningshbase-common.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/12226//artifact/patchprocess/newPatchFindbugsWarningshbase-client.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/12226//artifact/patchprocess/newPatchFindbugsWarningshbase-annotations.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/12226//artifact/patchprocess/newPatchFindbugsWarningshbase-hadoop-compat.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/12226//artifact/patchprocess/newPatchFindbugsWarningshbase-server.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/12226//artifact/patchprocess/newPatchFindbugsWarningshbase-prefix-tree.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/12226//artifact/patchprocess/newPatchFindbugsWarningshbase-protocol.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/12226//artifact/patchprocess/newPatchFindbugsWarningshbase-thrift.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/12226//artifact/patchprocess/newPatchFindbugsWarningshbase-examples.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/12226//artifact/patchprocess/newPatchFindbugsWarningshbase-hadoop2-compat.html Checkstyle Errors: https://builds.apache.org/job/PreCommit-HBASE-Build/12226//artifact/patchprocess/checkstyle-aggregate.html Console output: https://builds.apache.org/job/PreCommit-HBASE-Build/12226//console This message is automatically generated. > A bug in RegionSplitter.UniformSplit algorithm > -- > > Key: HBASE-12716 > URL: https://issues.apache.org/jira/browse/HBASE-12716 > Project: HBase > Issue Type: Bug > Components: regionserver >Affects Versions: 0.98.6 >Reporter: Weichen Ye >Assignee: Weichen Ye > Attachments: HBASE-12716-v2.patch, HBASE-12716.patch > > > I`m working for another issues HBASE-12590 and trying to use the UniformSplit > algorithm in RegionSplitter. When the last bytes of start key and end key are > adjacent in alphabetical order or ASCII order, the UniformSplit algorithm > meet an NPE. > Like startkey: aaa, endkey :aab >startkey: endkey: 1112 > For example, we write this simple test code: > {code} > import org.apache.hadoop.hbase.util.RegionSplitter.UniformSplit; > .. > byte[] a1 = { 'a', 'a', 'a' }; > byte[] a2 = { 'a', 'a', 'b' }; > UniformSplit us = new UniformSplit(); > byte[] mid = us.split(a1, a2); > .. > {code} > We will get the ERROR: > {code} > Exception in thread "main" java.lang.NullPointerException > at > org.apache.hadoop.hbase.util.RegionSplitter$UniformSplit.split(RegionSplitter.java:986) > {code} > We hope this algorithm should be able to calculate the split point with an > additional byte. for example: > "aaa" and "aab", split poin
[jira] [Commented] (HBASE-12716) A bug in RegionSplitter.UniformSplit algorithm
[ https://issues.apache.org/jira/browse/HBASE-12716?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14258798#comment-14258798 ] Ted Yu commented on HBASE-12716: Can you fix the test failure ? > A bug in RegionSplitter.UniformSplit algorithm > -- > > Key: HBASE-12716 > URL: https://issues.apache.org/jira/browse/HBASE-12716 > Project: HBase > Issue Type: Bug > Components: regionserver >Affects Versions: 0.98.6 >Reporter: Weichen Ye >Assignee: Weichen Ye > Attachments: HBASE-12716.patch > > > I`m working for another issues HBASE-12590 and trying to use the UniformSplit > algorithm in RegionSplitter. When the last bytes of start key and end key are > adjacent in alphabetical order or ASCII order, the UniformSplit algorithm > meet an NPE. > Like startkey: aaa, endkey :aab >startkey: endkey: 1112 > For example, we write this simple test code: > {code} > import org.apache.hadoop.hbase.util.RegionSplitter.UniformSplit; > .. > byte[] a1 = { 'a', 'a', 'a' }; > byte[] a2 = { 'a', 'a', 'b' }; > UniformSplit us = new UniformSplit(); > byte[] mid = us.split(a1, a2); > .. > {code} > We will get the ERROR: > {code} > Exception in thread "main" java.lang.NullPointerException > at > org.apache.hadoop.hbase.util.RegionSplitter$UniformSplit.split(RegionSplitter.java:986) > {code} > We hope this algorithm should be able to calculate the split point with an > additional byte. for example: > "aaa" and "aab", split point= "aaaP" > "" and "1112", split point ="P" -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (HBASE-12716) A bug in RegionSplitter.UniformSplit algorithm
[ https://issues.apache.org/jira/browse/HBASE-12716?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14258746#comment-14258746 ] Hadoop QA commented on HBASE-12716: --- {color:red}-1 overall{color}. Here are the results of testing the latest attachment http://issues.apache.org/jira/secure/attachment/12689106/HBASE-12716.patch against master branch at commit 30424ec73f7f100b233e27196c0a6a90abd62ad2. ATTACHMENT ID: 12689106 {color:green}+1 @author{color}. The patch does not contain any @author tags. {color:green}+1 tests included{color}. The patch appears to include 3 new or modified tests. {color:green}+1 javac{color}. The applied patch does not increase the total number of javac compiler warnings. {color:green}+1 javac{color}. The applied patch does not increase the total number of javac compiler warnings. {color:green}+1 javadoc{color}. The javadoc tool did not generate any warning messages. {color:green}+1 checkstyle{color}. The applied patch does not increase the total number of checkstyle errors {color:green}+1 findbugs{color}. The patch does not introduce any new Findbugs (version 2.0.3) warnings. {color:green}+1 release audit{color}. The applied patch does not increase the total number of release audit warnings. {color:green}+1 lineLengths{color}. The patch does not introduce lines longer than 100 {color:green}+1 site{color}. The mvn site goal succeeds with this patch. {color:red}-1 core tests{color}. The patch failed these unit tests: org.apache.hadoop.hbase.util.TestBytes Test results: https://builds.apache.org/job/PreCommit-HBASE-Build/12225//testReport/ Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/12225//artifact/patchprocess/newPatchFindbugsWarningshbase-hadoop-compat.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/12225//artifact/patchprocess/newPatchFindbugsWarningshbase-prefix-tree.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/12225//artifact/patchprocess/newPatchFindbugsWarningshbase-examples.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/12225//artifact/patchprocess/newPatchFindbugsWarningshbase-server.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/12225//artifact/patchprocess/newPatchFindbugsWarningshbase-common.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/12225//artifact/patchprocess/newPatchFindbugsWarningshbase-rest.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/12225//artifact/patchprocess/newPatchFindbugsWarningshbase-protocol.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/12225//artifact/patchprocess/newPatchFindbugsWarningshbase-client.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/12225//artifact/patchprocess/newPatchFindbugsWarningshbase-thrift.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/12225//artifact/patchprocess/newPatchFindbugsWarningshbase-hadoop2-compat.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/12225//artifact/patchprocess/newPatchFindbugsWarningshbase-annotations.html Checkstyle Errors: https://builds.apache.org/job/PreCommit-HBASE-Build/12225//artifact/patchprocess/checkstyle-aggregate.html Console output: https://builds.apache.org/job/PreCommit-HBASE-Build/12225//console This message is automatically generated. > A bug in RegionSplitter.UniformSplit algorithm > -- > > Key: HBASE-12716 > URL: https://issues.apache.org/jira/browse/HBASE-12716 > Project: HBase > Issue Type: Bug > Components: regionserver >Affects Versions: 0.98.6 >Reporter: Weichen Ye >Assignee: Weichen Ye > Attachments: HBASE-12716.patch > > > I`m working for another issues HBASE-12590 and trying to use the UniformSplit > algorithm in RegionSplitter. When the last bytes of start key and end key are > adjacent in alphabetical order or ASCII order, the UniformSplit algorithm > meet an NPE. > Like startkey: aaa, endkey :aab >startkey: endkey: 1112 > For example, we write this simple test code: > {code} > import org.apache.hadoop.hbase.util.RegionSplitter.UniformSplit; > .. > byte[] a1 = { 'a', 'a', 'a' }; > byte[] a2 = { 'a', 'a', 'b' }; > UniformSplit us = new UniformSplit(); > byte[] mid = us.split(a1, a2); > .. > {code} > We will get the ERROR: > {code} > Exception in thread "main" java.lang.NullPointerException > at > org.apache.hadoop.hbase.util.RegionSplitter$UniformSplit.split(RegionSplitter.java:986) > {code} > We hope this algorithm should be able to calculate the split point with an > additional byte. for ex
[jira] [Commented] (HBASE-12716) A bug in RegionSplitter.UniformSplit algorithm
[ https://issues.apache.org/jira/browse/HBASE-12716?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14258740#comment-14258740 ] Weichen Ye commented on HBASE-12716: Hi, [~te...@apache.org] The code for the bug is in the function iterateOnSplits() in org.apache.hadoop.hbase.util.Bytes in hbase-common. The original code is if(diffBI.compareTo(splitsBI) < 0) { return null; } Here in the code , the "diffBI" is the diff bewteen start key and end key. "splitBI" is the number of pieces in the result. For example, if we want to split the region ["aaa","aab"] into 2 pieces, the "diffBI" for "aaa" and "aab" is 1, the "splitBI" is 2. Because diffBI < splitBI, here this function returns null. This is the reason for the NullPointerException. I just upload a new patch to fix this bug. Use an additional byte to find the split point between start key and end key. Would you please take a look at this patch? > A bug in RegionSplitter.UniformSplit algorithm > -- > > Key: HBASE-12716 > URL: https://issues.apache.org/jira/browse/HBASE-12716 > Project: HBase > Issue Type: Bug > Components: regionserver >Affects Versions: 0.98.6 >Reporter: Weichen Ye >Assignee: Weichen Ye > Attachments: HBASE-12716.patch > > > I`m working for another issues HBASE-12590 and trying to use the UniformSplit > algorithm in RegionSplitter. When the last bytes of start key and end key are > adjacent in alphabetical order or ASCII order, the UniformSplit algorithm > meet an NPE. > Like startkey: aaa, endkey :aab >startkey: endkey: 1112 > For example, we write this simple test code: > {code} > import org.apache.hadoop.hbase.util.RegionSplitter.UniformSplit; > .. > byte[] a1 = { 'a', 'a', 'a' }; > byte[] a2 = { 'a', 'a', 'b' }; > UniformSplit us = new UniformSplit(); > byte[] mid = us.split(a1, a2); > .. > {code} > We will get the ERROR: > {code} > Exception in thread "main" java.lang.NullPointerException > at > org.apache.hadoop.hbase.util.RegionSplitter$UniformSplit.split(RegionSplitter.java:986) > {code} > We hope this algorithm should be able to calculate the split point with an > additional byte. for example: > "aaa" and "aab", split point= "aaaP" > "" and "1112", split point ="P" -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (HBASE-12716) A bug in RegionSplitter.UniformSplit algorithm
[ https://issues.apache.org/jira/browse/HBASE-12716?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14251899#comment-14251899 ] Ted Yu commented on HBASE-12716: [~yeweichen]: Can you put the code snippet above in TestRegionSplitter#unitTestUniformSplit ? If you have a patch for the fix, that would be even better. > A bug in RegionSplitter.UniformSplit algorithm > -- > > Key: HBASE-12716 > URL: https://issues.apache.org/jira/browse/HBASE-12716 > Project: HBase > Issue Type: Bug > Components: regionserver >Affects Versions: 0.98.6 >Reporter: Weichen Ye > > I`m working for another issues HBASE-12590 and trying to use the UniformSplit > algorithm in RegionSplitter. When the last bytes of start key and end key are > adjacent in alphabetical order or ASCII order, the UniformSplit algorithm > meet an NPE. > Like startkey: aaa, endkey :aab >startkey: endkey: 1112 > For example, we write this simple test code: > {code} > import org.apache.hadoop.hbase.util.RegionSplitter.UniformSplit; > .. > byte[] a1 = { 'a', 'a', 'a' }; > byte[] a2 = { 'a', 'a', 'b' }; > UniformSplit us = new UniformSplit(); > byte[] mid = us.split(a1, a2); > .. > {code} > We will get the ERROR: > {code} > Exception in thread "main" java.lang.NullPointerException > at > org.apache.hadoop.hbase.util.RegionSplitter$UniformSplit.split(RegionSplitter.java:986) > {code} > We hope this algorithm should be able to calculate the split point with an > additional byte. for example: > "aaa" and "aab", split point= "aaaP" > "" and "1112", split point ="P" -- This message was sent by Atlassian JIRA (v6.3.4#6332)