[jira] [Commented] (HBASE-20135) NullPointerException during reading bloom filter when upgraded from hbase-1 to hbase-2
[ https://issues.apache.org/jira/browse/HBASE-20135?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16416696#comment-16416696 ] Hudson commented on HBASE-20135: Results for branch HBASE-19064 [build #77 on builds.a.o|https://builds.apache.org/job/HBase%20Nightly/job/HBASE-19064/77/]: (x) *{color:red}-1 overall{color}* details (if available): (x) {color:red}-1 general checks{color} -- For more information [see general report|https://builds.apache.org/job/HBase%20Nightly/job/HBASE-19064/77//General_Nightly_Build_Report/] (x) {color:red}-1 jdk8 hadoop2 checks{color} -- For more information [see jdk8 (hadoop2) report|https://builds.apache.org/job/HBase%20Nightly/job/HBASE-19064/77//JDK8_Nightly_Build_Report_(Hadoop2)/] (x) {color:red}-1 jdk8 hadoop3 checks{color} -- For more information [see jdk8 (hadoop3) report|https://builds.apache.org/job/HBase%20Nightly/job/HBASE-19064/77//JDK8_Nightly_Build_Report_(Hadoop3)/] (/) {color:green}+1 source release artifact{color} -- See build output for details. > NullPointerException during reading bloom filter when upgraded from hbase-1 > to hbase-2 > -- > > Key: HBASE-20135 > URL: https://issues.apache.org/jira/browse/HBASE-20135 > Project: HBase > Issue Type: Improvement >Affects Versions: 2.0.0-beta-2 >Reporter: Umesh Agashe >Assignee: Sakthi >Priority: Minor > Fix For: 2.0.0 > > Attachments: hbase-20135.master.001.patch, > hbase-20135.master.002.patch > > > When upgraded from hbase-1 to hbase-2, found following exception logged > multiple times in the log: > {code:java} > ERROR [StoreFileOpenerThread-test_cf-1] regionserver.StoreFileReader: Error > reading bloom filter meta for GENERAL_BLOOM_META -- proceeding without > java.io.IOException: Comparator class > org.apache.hadoop.hbase.KeyValue$RawBytesComparator is not instantiable > at > org.apache.hadoop.hbase.io.hfile.FixedFileTrailer.createComparator(FixedFileTrailer.java:628) > at > org.apache.hadoop.hbase.io.hfile.CompoundBloomFilter.(CompoundBloomFilter.java:79) > at > org.apache.hadoop.hbase.util.BloomFilterFactory.createFromMeta(BloomFilterFactory.java:104) > at > org.apache.hadoop.hbase.regionserver.StoreFileReader.loadBloomfilter(StoreFileReader.java:479) > at > org.apache.hadoop.hbase.regionserver.HStoreFile.open(HStoreFile.java:425) > at > org.apache.hadoop.hbase.regionserver.HStoreFile.initReader(HStoreFile.java:460) > at > org.apache.hadoop.hbase.regionserver.HStore.createStoreFileAndReader(HStore.java:671) > at > org.apache.hadoop.hbase.regionserver.HStore.lambda$openStoreFiles$0(HStore.java:537) > at java.util.concurrent.FutureTask.run(FutureTask.java:266) > at > java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) > at java.util.concurrent.FutureTask.run(FutureTask.java:266) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) > at java.lang.Thread.run(Thread.java:748) > Caused by: java.lang.NullPointerException{code} > > Analysis from [~anoop.hbase]: > Checking the related code. There seems no issue.. We are not going > to even fail reading the bloom. In 2.0 code base we expect the > comparator class name to be null. But in 1.x we write old KV based > Raw Bytes comparator class name. So reading that back, we will return > class name as null and we get NPE it looks like. > {code:java} > else if > (comparatorClassName.equals("org.apache.hadoop.hbase.KeyValue$RawBytesComparator") > || > comparatorClassName.equals("org.apache.hadoop.hbase.util.Bytes$ByteArrayComparator")) > { > // When the comparator to be used is Bytes.BYTES_RAWCOMPARATOR, > we just return null from here > // Bytes.BYTES_RAWCOMPARATOR is not a CellComparator > comparatorKlass = null; > } > {code} > We can better do a null check before trying the comparator class > instantiation so that we can avoid this scary error logs -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HBASE-20135) NullPointerException during reading bloom filter when upgraded from hbase-1 to hbase-2
[ https://issues.apache.org/jira/browse/HBASE-20135?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16412565#comment-16412565 ] Hudson commented on HBASE-20135: Results for branch master [build #271 on builds.a.o|https://builds.apache.org/job/HBase%20Nightly/job/master/271/]: (x) *{color:red}-1 overall{color}* details (if available): (x) {color:red}-1 general checks{color} -- For more information [see general report|https://builds.apache.org/job/HBase%20Nightly/job/master/271//General_Nightly_Build_Report/] (x) {color:red}-1 jdk8 hadoop2 checks{color} -- For more information [see jdk8 (hadoop2) report|https://builds.apache.org/job/HBase%20Nightly/job/master/271//JDK8_Nightly_Build_Report_(Hadoop2)/] (x) {color:red}-1 jdk8 hadoop3 checks{color} -- For more information [see jdk8 (hadoop3) report|https://builds.apache.org/job/HBase%20Nightly/job/master/271//JDK8_Nightly_Build_Report_(Hadoop3)/] (/) {color:green}+1 source release artifact{color} -- See build output for details. > NullPointerException during reading bloom filter when upgraded from hbase-1 > to hbase-2 > -- > > Key: HBASE-20135 > URL: https://issues.apache.org/jira/browse/HBASE-20135 > Project: HBase > Issue Type: Improvement >Affects Versions: 2.0.0-beta-2 >Reporter: Umesh Agashe >Assignee: Sakthi >Priority: Minor > Fix For: 2.0.0 > > Attachments: hbase-20135.master.001.patch, > hbase-20135.master.002.patch > > > When upgraded from hbase-1 to hbase-2, found following exception logged > multiple times in the log: > {code:java} > ERROR [StoreFileOpenerThread-test_cf-1] regionserver.StoreFileReader: Error > reading bloom filter meta for GENERAL_BLOOM_META -- proceeding without > java.io.IOException: Comparator class > org.apache.hadoop.hbase.KeyValue$RawBytesComparator is not instantiable > at > org.apache.hadoop.hbase.io.hfile.FixedFileTrailer.createComparator(FixedFileTrailer.java:628) > at > org.apache.hadoop.hbase.io.hfile.CompoundBloomFilter.(CompoundBloomFilter.java:79) > at > org.apache.hadoop.hbase.util.BloomFilterFactory.createFromMeta(BloomFilterFactory.java:104) > at > org.apache.hadoop.hbase.regionserver.StoreFileReader.loadBloomfilter(StoreFileReader.java:479) > at > org.apache.hadoop.hbase.regionserver.HStoreFile.open(HStoreFile.java:425) > at > org.apache.hadoop.hbase.regionserver.HStoreFile.initReader(HStoreFile.java:460) > at > org.apache.hadoop.hbase.regionserver.HStore.createStoreFileAndReader(HStore.java:671) > at > org.apache.hadoop.hbase.regionserver.HStore.lambda$openStoreFiles$0(HStore.java:537) > at java.util.concurrent.FutureTask.run(FutureTask.java:266) > at > java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) > at java.util.concurrent.FutureTask.run(FutureTask.java:266) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) > at java.lang.Thread.run(Thread.java:748) > Caused by: java.lang.NullPointerException{code} > > Analysis from [~anoop.hbase]: > Checking the related code. There seems no issue.. We are not going > to even fail reading the bloom. In 2.0 code base we expect the > comparator class name to be null. But in 1.x we write old KV based > Raw Bytes comparator class name. So reading that back, we will return > class name as null and we get NPE it looks like. > {code:java} > else if > (comparatorClassName.equals("org.apache.hadoop.hbase.KeyValue$RawBytesComparator") > || > comparatorClassName.equals("org.apache.hadoop.hbase.util.Bytes$ByteArrayComparator")) > { > // When the comparator to be used is Bytes.BYTES_RAWCOMPARATOR, > we just return null from here > // Bytes.BYTES_RAWCOMPARATOR is not a CellComparator > comparatorKlass = null; > } > {code} > We can better do a null check before trying the comparator class > instantiation so that we can avoid this scary error logs -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HBASE-20135) NullPointerException during reading bloom filter when upgraded from hbase-1 to hbase-2
[ https://issues.apache.org/jira/browse/HBASE-20135?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16412445#comment-16412445 ] Hudson commented on HBASE-20135: Results for branch branch-2.0 [build #81 on builds.a.o|https://builds.apache.org/job/HBase%20Nightly/job/branch-2.0/81/]: (x) *{color:red}-1 overall{color}* details (if available): (/) {color:green}+1 general checks{color} -- For more information [see general report|https://builds.apache.org/job/HBase%20Nightly/job/branch-2.0/81//General_Nightly_Build_Report/] (x) {color:red}-1 jdk8 hadoop2 checks{color} -- For more information [see jdk8 (hadoop2) report|https://builds.apache.org/job/HBase%20Nightly/job/branch-2.0/81//JDK8_Nightly_Build_Report_(Hadoop2)/] (/) {color:green}+1 jdk8 hadoop3 checks{color} -- For more information [see jdk8 (hadoop3) report|https://builds.apache.org/job/HBase%20Nightly/job/branch-2.0/81//JDK8_Nightly_Build_Report_(Hadoop3)/] (/) {color:green}+1 source release artifact{color} -- See build output for details. > NullPointerException during reading bloom filter when upgraded from hbase-1 > to hbase-2 > -- > > Key: HBASE-20135 > URL: https://issues.apache.org/jira/browse/HBASE-20135 > Project: HBase > Issue Type: Improvement >Affects Versions: 2.0.0-beta-2 >Reporter: Umesh Agashe >Assignee: Sakthi >Priority: Minor > Fix For: 2.0.0 > > Attachments: hbase-20135.master.001.patch, > hbase-20135.master.002.patch > > > When upgraded from hbase-1 to hbase-2, found following exception logged > multiple times in the log: > {code:java} > ERROR [StoreFileOpenerThread-test_cf-1] regionserver.StoreFileReader: Error > reading bloom filter meta for GENERAL_BLOOM_META -- proceeding without > java.io.IOException: Comparator class > org.apache.hadoop.hbase.KeyValue$RawBytesComparator is not instantiable > at > org.apache.hadoop.hbase.io.hfile.FixedFileTrailer.createComparator(FixedFileTrailer.java:628) > at > org.apache.hadoop.hbase.io.hfile.CompoundBloomFilter.(CompoundBloomFilter.java:79) > at > org.apache.hadoop.hbase.util.BloomFilterFactory.createFromMeta(BloomFilterFactory.java:104) > at > org.apache.hadoop.hbase.regionserver.StoreFileReader.loadBloomfilter(StoreFileReader.java:479) > at > org.apache.hadoop.hbase.regionserver.HStoreFile.open(HStoreFile.java:425) > at > org.apache.hadoop.hbase.regionserver.HStoreFile.initReader(HStoreFile.java:460) > at > org.apache.hadoop.hbase.regionserver.HStore.createStoreFileAndReader(HStore.java:671) > at > org.apache.hadoop.hbase.regionserver.HStore.lambda$openStoreFiles$0(HStore.java:537) > at java.util.concurrent.FutureTask.run(FutureTask.java:266) > at > java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) > at java.util.concurrent.FutureTask.run(FutureTask.java:266) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) > at java.lang.Thread.run(Thread.java:748) > Caused by: java.lang.NullPointerException{code} > > Analysis from [~anoop.hbase]: > Checking the related code. There seems no issue.. We are not going > to even fail reading the bloom. In 2.0 code base we expect the > comparator class name to be null. But in 1.x we write old KV based > Raw Bytes comparator class name. So reading that back, we will return > class name as null and we get NPE it looks like. > {code:java} > else if > (comparatorClassName.equals("org.apache.hadoop.hbase.KeyValue$RawBytesComparator") > || > comparatorClassName.equals("org.apache.hadoop.hbase.util.Bytes$ByteArrayComparator")) > { > // When the comparator to be used is Bytes.BYTES_RAWCOMPARATOR, > we just return null from here > // Bytes.BYTES_RAWCOMPARATOR is not a CellComparator > comparatorKlass = null; > } > {code} > We can better do a null check before trying the comparator class > instantiation so that we can avoid this scary error logs -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HBASE-20135) NullPointerException during reading bloom filter when upgraded from hbase-1 to hbase-2
[ https://issues.apache.org/jira/browse/HBASE-20135?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16412435#comment-16412435 ] Hudson commented on HBASE-20135: Results for branch branch-2 [build #522 on builds.a.o|https://builds.apache.org/job/HBase%20Nightly/job/branch-2/522/]: (x) *{color:red}-1 overall{color}* details (if available): (/) {color:green}+1 general checks{color} -- For more information [see general report|https://builds.apache.org/job/HBase%20Nightly/job/branch-2/522//General_Nightly_Build_Report/] (/) {color:green}+1 jdk8 hadoop2 checks{color} -- For more information [see jdk8 (hadoop2) report|https://builds.apache.org/job/HBase%20Nightly/job/branch-2/522//JDK8_Nightly_Build_Report_(Hadoop2)/] (/) {color:green}+1 jdk8 hadoop3 checks{color} -- For more information [see jdk8 (hadoop3) report|https://builds.apache.org/job/HBase%20Nightly/job/branch-2/522//JDK8_Nightly_Build_Report_(Hadoop3)/] (/) {color:green}+1 source release artifact{color} -- See build output for details. > NullPointerException during reading bloom filter when upgraded from hbase-1 > to hbase-2 > -- > > Key: HBASE-20135 > URL: https://issues.apache.org/jira/browse/HBASE-20135 > Project: HBase > Issue Type: Improvement >Affects Versions: 2.0.0-beta-2 >Reporter: Umesh Agashe >Assignee: Sakthi >Priority: Minor > Fix For: 2.0.0 > > Attachments: hbase-20135.master.001.patch, > hbase-20135.master.002.patch > > > When upgraded from hbase-1 to hbase-2, found following exception logged > multiple times in the log: > {code:java} > ERROR [StoreFileOpenerThread-test_cf-1] regionserver.StoreFileReader: Error > reading bloom filter meta for GENERAL_BLOOM_META -- proceeding without > java.io.IOException: Comparator class > org.apache.hadoop.hbase.KeyValue$RawBytesComparator is not instantiable > at > org.apache.hadoop.hbase.io.hfile.FixedFileTrailer.createComparator(FixedFileTrailer.java:628) > at > org.apache.hadoop.hbase.io.hfile.CompoundBloomFilter.(CompoundBloomFilter.java:79) > at > org.apache.hadoop.hbase.util.BloomFilterFactory.createFromMeta(BloomFilterFactory.java:104) > at > org.apache.hadoop.hbase.regionserver.StoreFileReader.loadBloomfilter(StoreFileReader.java:479) > at > org.apache.hadoop.hbase.regionserver.HStoreFile.open(HStoreFile.java:425) > at > org.apache.hadoop.hbase.regionserver.HStoreFile.initReader(HStoreFile.java:460) > at > org.apache.hadoop.hbase.regionserver.HStore.createStoreFileAndReader(HStore.java:671) > at > org.apache.hadoop.hbase.regionserver.HStore.lambda$openStoreFiles$0(HStore.java:537) > at java.util.concurrent.FutureTask.run(FutureTask.java:266) > at > java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) > at java.util.concurrent.FutureTask.run(FutureTask.java:266) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) > at java.lang.Thread.run(Thread.java:748) > Caused by: java.lang.NullPointerException{code} > > Analysis from [~anoop.hbase]: > Checking the related code. There seems no issue.. We are not going > to even fail reading the bloom. In 2.0 code base we expect the > comparator class name to be null. But in 1.x we write old KV based > Raw Bytes comparator class name. So reading that back, we will return > class name as null and we get NPE it looks like. > {code:java} > else if > (comparatorClassName.equals("org.apache.hadoop.hbase.KeyValue$RawBytesComparator") > || > comparatorClassName.equals("org.apache.hadoop.hbase.util.Bytes$ByteArrayComparator")) > { > // When the comparator to be used is Bytes.BYTES_RAWCOMPARATOR, > we just return null from here > // Bytes.BYTES_RAWCOMPARATOR is not a CellComparator > comparatorKlass = null; > } > {code} > We can better do a null check before trying the comparator class > instantiation so that we can avoid this scary error logs -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HBASE-20135) NullPointerException during reading bloom filter when upgraded from hbase-1 to hbase-2
[ https://issues.apache.org/jira/browse/HBASE-20135?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16412207#comment-16412207 ] Umesh Agashe commented on HBASE-20135: -- Thanks for the patch [~jatsakthi]! > NullPointerException during reading bloom filter when upgraded from hbase-1 > to hbase-2 > -- > > Key: HBASE-20135 > URL: https://issues.apache.org/jira/browse/HBASE-20135 > Project: HBase > Issue Type: Improvement >Affects Versions: 2.0.0-beta-2 >Reporter: Umesh Agashe >Assignee: Sakthi >Priority: Minor > Fix For: 2.0.0 > > Attachments: hbase-20135.master.001.patch, > hbase-20135.master.002.patch > > > When upgraded from hbase-1 to hbase-2, found following exception logged > multiple times in the log: > {code:java} > ERROR [StoreFileOpenerThread-test_cf-1] regionserver.StoreFileReader: Error > reading bloom filter meta for GENERAL_BLOOM_META -- proceeding without > java.io.IOException: Comparator class > org.apache.hadoop.hbase.KeyValue$RawBytesComparator is not instantiable > at > org.apache.hadoop.hbase.io.hfile.FixedFileTrailer.createComparator(FixedFileTrailer.java:628) > at > org.apache.hadoop.hbase.io.hfile.CompoundBloomFilter.(CompoundBloomFilter.java:79) > at > org.apache.hadoop.hbase.util.BloomFilterFactory.createFromMeta(BloomFilterFactory.java:104) > at > org.apache.hadoop.hbase.regionserver.StoreFileReader.loadBloomfilter(StoreFileReader.java:479) > at > org.apache.hadoop.hbase.regionserver.HStoreFile.open(HStoreFile.java:425) > at > org.apache.hadoop.hbase.regionserver.HStoreFile.initReader(HStoreFile.java:460) > at > org.apache.hadoop.hbase.regionserver.HStore.createStoreFileAndReader(HStore.java:671) > at > org.apache.hadoop.hbase.regionserver.HStore.lambda$openStoreFiles$0(HStore.java:537) > at java.util.concurrent.FutureTask.run(FutureTask.java:266) > at > java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) > at java.util.concurrent.FutureTask.run(FutureTask.java:266) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) > at java.lang.Thread.run(Thread.java:748) > Caused by: java.lang.NullPointerException{code} > > Analysis from [~anoop.hbase]: > Checking the related code. There seems no issue.. We are not going > to even fail reading the bloom. In 2.0 code base we expect the > comparator class name to be null. But in 1.x we write old KV based > Raw Bytes comparator class name. So reading that back, we will return > class name as null and we get NPE it looks like. > {code:java} > else if > (comparatorClassName.equals("org.apache.hadoop.hbase.KeyValue$RawBytesComparator") > || > comparatorClassName.equals("org.apache.hadoop.hbase.util.Bytes$ByteArrayComparator")) > { > // When the comparator to be used is Bytes.BYTES_RAWCOMPARATOR, > we just return null from here > // Bytes.BYTES_RAWCOMPARATOR is not a CellComparator > comparatorKlass = null; > } > {code} > We can better do a null check before trying the comparator class > instantiation so that we can avoid this scary error logs -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HBASE-20135) NullPointerException during reading bloom filter when upgraded from hbase-1 to hbase-2
[ https://issues.apache.org/jira/browse/HBASE-20135?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16412198#comment-16412198 ] Sakthi commented on HBASE-20135: Thanks [~stack] & [~uagashe] for this one! > NullPointerException during reading bloom filter when upgraded from hbase-1 > to hbase-2 > -- > > Key: HBASE-20135 > URL: https://issues.apache.org/jira/browse/HBASE-20135 > Project: HBase > Issue Type: Improvement >Affects Versions: 2.0.0-beta-2 >Reporter: Umesh Agashe >Assignee: Sakthi >Priority: Minor > Fix For: 2.0.0 > > Attachments: hbase-20135.master.001.patch, > hbase-20135.master.002.patch > > > When upgraded from hbase-1 to hbase-2, found following exception logged > multiple times in the log: > {code:java} > ERROR [StoreFileOpenerThread-test_cf-1] regionserver.StoreFileReader: Error > reading bloom filter meta for GENERAL_BLOOM_META -- proceeding without > java.io.IOException: Comparator class > org.apache.hadoop.hbase.KeyValue$RawBytesComparator is not instantiable > at > org.apache.hadoop.hbase.io.hfile.FixedFileTrailer.createComparator(FixedFileTrailer.java:628) > at > org.apache.hadoop.hbase.io.hfile.CompoundBloomFilter.(CompoundBloomFilter.java:79) > at > org.apache.hadoop.hbase.util.BloomFilterFactory.createFromMeta(BloomFilterFactory.java:104) > at > org.apache.hadoop.hbase.regionserver.StoreFileReader.loadBloomfilter(StoreFileReader.java:479) > at > org.apache.hadoop.hbase.regionserver.HStoreFile.open(HStoreFile.java:425) > at > org.apache.hadoop.hbase.regionserver.HStoreFile.initReader(HStoreFile.java:460) > at > org.apache.hadoop.hbase.regionserver.HStore.createStoreFileAndReader(HStore.java:671) > at > org.apache.hadoop.hbase.regionserver.HStore.lambda$openStoreFiles$0(HStore.java:537) > at java.util.concurrent.FutureTask.run(FutureTask.java:266) > at > java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) > at java.util.concurrent.FutureTask.run(FutureTask.java:266) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) > at java.lang.Thread.run(Thread.java:748) > Caused by: java.lang.NullPointerException{code} > > Analysis from [~anoop.hbase]: > Checking the related code. There seems no issue.. We are not going > to even fail reading the bloom. In 2.0 code base we expect the > comparator class name to be null. But in 1.x we write old KV based > Raw Bytes comparator class name. So reading that back, we will return > class name as null and we get NPE it looks like. > {code:java} > else if > (comparatorClassName.equals("org.apache.hadoop.hbase.KeyValue$RawBytesComparator") > || > comparatorClassName.equals("org.apache.hadoop.hbase.util.Bytes$ByteArrayComparator")) > { > // When the comparator to be used is Bytes.BYTES_RAWCOMPARATOR, > we just return null from here > // Bytes.BYTES_RAWCOMPARATOR is not a CellComparator > comparatorKlass = null; > } > {code} > We can better do a null check before trying the comparator class > instantiation so that we can avoid this scary error logs -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HBASE-20135) NullPointerException during reading bloom filter when upgraded from hbase-1 to hbase-2
[ https://issues.apache.org/jira/browse/HBASE-20135?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16410739#comment-16410739 ] Hadoop QA commented on HBASE-20135: --- | (/) *{color:green}+1 overall{color}* | \\ \\ || Vote || Subsystem || Runtime || Comment || | {color:blue}0{color} | {color:blue} reexec {color} | {color:blue} 0m 23s{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:green}+1{color} | {color:green} test4tests {color} | {color:green} 0m 0s{color} | {color:green} The patch appears to include 1 new or modified test files. {color} | || || || || {color:brown} master Compile Tests {color} || | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 4m 29s{color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 1m 34s{color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 1m 3s{color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} shadedjars {color} | {color:green} 5m 18s{color} | {color:green} branch has no errors when building our shaded downstream artifacts. {color} | | {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 1m 47s{color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 26s{color} | {color:green} master passed {color} | || || || || {color:brown} Patch Compile Tests {color} || | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 4m 6s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 1m 33s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javac {color} | {color:green} 1m 33s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 59s{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 13s{color} | {color:green} patch has no errors when building our shaded downstream artifacts. {color} | | {color:green}+1{color} | {color:green} hadoopcheck {color} | {color:green} 17m 14s{color} | {color:green} Patch does not cause any errors with Hadoop 2.6.5 2.7.4 or 3.0.0. {color} | | {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 1m 55s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 26s{color} | {color:green} the patch passed {color} | || || || || {color:brown} Other Tests {color} || | {color:green}+1{color} | {color:green} unit {color} | {color:green}166m 44s{color} | {color:green} hbase-server in the patch passed. {color} | | {color:green}+1{color} | {color:green} asflicense {color} | {color:green} 0m 17s{color} | {color:green} The patch does not generate ASF License warnings. {color} | | {color:black}{color} | {color:black} {color} | {color:black}207m 30s{color} | {color:black} {color} | \\ \\ || Subsystem || Report/Notes || | Docker | Client=17.05.0-ce Server=17.05.0-ce Image:yetus/hbase:eee3b01 | | JIRA Issue | HBASE-20135 | | JIRA Patch URL | https://issues.apache.org/jira/secure/attachment/12915783/hbase-20135.master.002.patch | | Optional Tests | asflicense javac javadoc unit findbugs shadedjars hadoopcheck hbaseanti checkstyle compile | | uname | Linux aadbfd18e265 4.4.0-64-generic #85-Ubuntu SMP Mon Feb 20 11:50:30 UTC 2017 x86_64 GNU/Linux | | Build tool | maven | | Personality | /home/jenkins/jenkins-slave/workspace/PreCommit-HBASE-Build/component/dev-support/hbase-personality.sh | | git revision | master / 4cdca34ace | | maven | version: Apache Maven 3.5.3 (3383c37e1f9e9b3bc3df5050c29c8aff9f295297; 2018-02-24T19:49:05Z) | | Default Java | 1.8.0_162 | | findbugs | v3.1.0-RC3 | | Test Results | https://builds.apache.org/job/PreCommit-HBASE-Build/12085/testReport/ | | Max. process+thread count | 4549 (vs. ulimit of 1) | | modules | C: hbase-server U: hbase-server | | Console output | https://builds.apache.org/job/PreCommit-HBASE-Build/12085/console | | Powered by | Apache Yetus 0.7.0 http://yetus.apache.org | This message was automatically generated. > NullPointerException during
[jira] [Commented] (HBASE-20135) NullPointerException during reading bloom filter when upgraded from hbase-1 to hbase-2
[ https://issues.apache.org/jira/browse/HBASE-20135?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16410686#comment-16410686 ] Hadoop QA commented on HBASE-20135: --- | (/) *{color:green}+1 overall{color}* | \\ \\ || Vote || Subsystem || Runtime || Comment || | {color:blue}0{color} | {color:blue} reexec {color} | {color:blue} 0m 18s{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:green}+1{color} | {color:green} test4tests {color} | {color:green} 0m 0s{color} | {color:green} The patch appears to include 1 new or modified test files. {color} | || || || || {color:brown} master Compile Tests {color} || | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 4m 33s{color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 1m 32s{color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 59s{color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} shadedjars {color} | {color:green} 5m 15s{color} | {color:green} branch has no errors when building our shaded downstream artifacts. {color} | | {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 1m 52s{color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 25s{color} | {color:green} master passed {color} | || || || || {color:brown} Patch Compile Tests {color} || | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 4m 21s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 1m 35s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javac {color} | {color:green} 1m 35s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 58s{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 21s{color} | {color:green} patch has no errors when building our shaded downstream artifacts. {color} | | {color:green}+1{color} | {color:green} hadoopcheck {color} | {color:green} 17m 52s{color} | {color:green} Patch does not cause any errors with Hadoop 2.6.5 2.7.4 or 3.0.0. {color} | | {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 2m 1s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 25s{color} | {color:green} the patch passed {color} | || || || || {color:brown} Other Tests {color} || | {color:green}+1{color} | {color:green} unit {color} | {color:green}113m 17s{color} | {color:green} hbase-server in the patch passed. {color} | | {color:green}+1{color} | {color:green} asflicense {color} | {color:green} 0m 16s{color} | {color:green} The patch does not generate ASF License warnings. {color} | | {color:black}{color} | {color:black} {color} | {color:black}154m 59s{color} | {color:black} {color} | \\ \\ || Subsystem || Report/Notes || | Docker | Client=17.05.0-ce Server=17.05.0-ce Image:yetus/hbase:eee3b01 | | JIRA Issue | HBASE-20135 | | JIRA Patch URL | https://issues.apache.org/jira/secure/attachment/12915783/hbase-20135.master.002.patch | | Optional Tests | asflicense javac javadoc unit findbugs shadedjars hadoopcheck hbaseanti checkstyle compile | | uname | Linux 1ebd41daa3e6 4.4.0-43-generic #63-Ubuntu SMP Wed Oct 12 13:48:03 UTC 2016 x86_64 GNU/Linux | | Build tool | maven | | Personality | /home/jenkins/jenkins-slave/workspace/PreCommit-HBASE-Build/component/dev-support/hbase-personality.sh | | git revision | master / 4cdca34ace | | maven | version: Apache Maven 3.5.3 (3383c37e1f9e9b3bc3df5050c29c8aff9f295297; 2018-02-24T19:49:05Z) | | Default Java | 1.8.0_162 | | findbugs | v3.1.0-RC3 | | Test Results | https://builds.apache.org/job/PreCommit-HBASE-Build/12084/testReport/ | | Max. process+thread count | 4193 (vs. ulimit of 1) | | modules | C: hbase-server U: hbase-server | | Console output | https://builds.apache.org/job/PreCommit-HBASE-Build/12084/console | | Powered by | Apache Yetus 0.7.0 http://yetus.apache.org | This message was automatically generated. > NullPointerException during
[jira] [Commented] (HBASE-20135) NullPointerException during reading bloom filter when upgraded from hbase-1 to hbase-2
[ https://issues.apache.org/jira/browse/HBASE-20135?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16410555#comment-16410555 ] Sakthi commented on HBASE-20135: Hello [~uagashe] , Could you please review patch#2 and let me know your thoughts? > NullPointerException during reading bloom filter when upgraded from hbase-1 > to hbase-2 > -- > > Key: HBASE-20135 > URL: https://issues.apache.org/jira/browse/HBASE-20135 > Project: HBase > Issue Type: Improvement >Affects Versions: 2.0.0-beta-2 >Reporter: Umesh Agashe >Assignee: Sakthi >Priority: Minor > Fix For: 2.0.0 > > Attachments: hbase-20135.master.001.patch, > hbase-20135.master.002.patch > > > When upgraded from hbase-1 to hbase-2, found following exception logged > multiple times in the log: > {code:java} > ERROR [StoreFileOpenerThread-test_cf-1] regionserver.StoreFileReader: Error > reading bloom filter meta for GENERAL_BLOOM_META -- proceeding without > java.io.IOException: Comparator class > org.apache.hadoop.hbase.KeyValue$RawBytesComparator is not instantiable > at > org.apache.hadoop.hbase.io.hfile.FixedFileTrailer.createComparator(FixedFileTrailer.java:628) > at > org.apache.hadoop.hbase.io.hfile.CompoundBloomFilter.(CompoundBloomFilter.java:79) > at > org.apache.hadoop.hbase.util.BloomFilterFactory.createFromMeta(BloomFilterFactory.java:104) > at > org.apache.hadoop.hbase.regionserver.StoreFileReader.loadBloomfilter(StoreFileReader.java:479) > at > org.apache.hadoop.hbase.regionserver.HStoreFile.open(HStoreFile.java:425) > at > org.apache.hadoop.hbase.regionserver.HStoreFile.initReader(HStoreFile.java:460) > at > org.apache.hadoop.hbase.regionserver.HStore.createStoreFileAndReader(HStore.java:671) > at > org.apache.hadoop.hbase.regionserver.HStore.lambda$openStoreFiles$0(HStore.java:537) > at java.util.concurrent.FutureTask.run(FutureTask.java:266) > at > java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) > at java.util.concurrent.FutureTask.run(FutureTask.java:266) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) > at java.lang.Thread.run(Thread.java:748) > Caused by: java.lang.NullPointerException{code} > > Analysis from [~anoop.hbase]: > Checking the related code. There seems no issue.. We are not going > to even fail reading the bloom. In 2.0 code base we expect the > comparator class name to be null. But in 1.x we write old KV based > Raw Bytes comparator class name. So reading that back, we will return > class name as null and we get NPE it looks like. > {code:java} > else if > (comparatorClassName.equals("org.apache.hadoop.hbase.KeyValue$RawBytesComparator") > || > comparatorClassName.equals("org.apache.hadoop.hbase.util.Bytes$ByteArrayComparator")) > { > // When the comparator to be used is Bytes.BYTES_RAWCOMPARATOR, > we just return null from here > // Bytes.BYTES_RAWCOMPARATOR is not a CellComparator > comparatorKlass = null; > } > {code} > We can better do a null check before trying the comparator class > instantiation so that we can avoid this scary error logs -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HBASE-20135) NullPointerException during reading bloom filter when upgraded from hbase-1 to hbase-2
[ https://issues.apache.org/jira/browse/HBASE-20135?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16410543#comment-16410543 ] Sakthi commented on HBASE-20135: [~uagashe] , Thank you for your comments. Will modify accordingly and upload a new patch. > NullPointerException during reading bloom filter when upgraded from hbase-1 > to hbase-2 > -- > > Key: HBASE-20135 > URL: https://issues.apache.org/jira/browse/HBASE-20135 > Project: HBase > Issue Type: Improvement >Affects Versions: 2.0.0-beta-2 >Reporter: Umesh Agashe >Assignee: Sakthi >Priority: Minor > Fix For: 2.0.0 > > Attachments: hbase-20135.master.001.patch > > > When upgraded from hbase-1 to hbase-2, found following exception logged > multiple times in the log: > {code:java} > ERROR [StoreFileOpenerThread-test_cf-1] regionserver.StoreFileReader: Error > reading bloom filter meta for GENERAL_BLOOM_META -- proceeding without > java.io.IOException: Comparator class > org.apache.hadoop.hbase.KeyValue$RawBytesComparator is not instantiable > at > org.apache.hadoop.hbase.io.hfile.FixedFileTrailer.createComparator(FixedFileTrailer.java:628) > at > org.apache.hadoop.hbase.io.hfile.CompoundBloomFilter.(CompoundBloomFilter.java:79) > at > org.apache.hadoop.hbase.util.BloomFilterFactory.createFromMeta(BloomFilterFactory.java:104) > at > org.apache.hadoop.hbase.regionserver.StoreFileReader.loadBloomfilter(StoreFileReader.java:479) > at > org.apache.hadoop.hbase.regionserver.HStoreFile.open(HStoreFile.java:425) > at > org.apache.hadoop.hbase.regionserver.HStoreFile.initReader(HStoreFile.java:460) > at > org.apache.hadoop.hbase.regionserver.HStore.createStoreFileAndReader(HStore.java:671) > at > org.apache.hadoop.hbase.regionserver.HStore.lambda$openStoreFiles$0(HStore.java:537) > at java.util.concurrent.FutureTask.run(FutureTask.java:266) > at > java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) > at java.util.concurrent.FutureTask.run(FutureTask.java:266) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) > at java.lang.Thread.run(Thread.java:748) > Caused by: java.lang.NullPointerException{code} > > Analysis from [~anoop.hbase]: > Checking the related code. There seems no issue.. We are not going > to even fail reading the bloom. In 2.0 code base we expect the > comparator class name to be null. But in 1.x we write old KV based > Raw Bytes comparator class name. So reading that back, we will return > class name as null and we get NPE it looks like. > {code:java} > else if > (comparatorClassName.equals("org.apache.hadoop.hbase.KeyValue$RawBytesComparator") > || > comparatorClassName.equals("org.apache.hadoop.hbase.util.Bytes$ByteArrayComparator")) > { > // When the comparator to be used is Bytes.BYTES_RAWCOMPARATOR, > we just return null from here > // Bytes.BYTES_RAWCOMPARATOR is not a CellComparator > comparatorKlass = null; > } > {code} > We can better do a null check before trying the comparator class > instantiation so that we can avoid this scary error logs -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HBASE-20135) NullPointerException during reading bloom filter when upgraded from hbase-1 to hbase-2
[ https://issues.apache.org/jira/browse/HBASE-20135?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16410537#comment-16410537 ] Umesh Agashe commented on HBASE-20135: -- org.junit.rules.ExpectedException can be used instead: {code:java} } catch (IOException e){ // Got an expected exception assertTrue(true); }{code} nit: can use Asser.assertNull() instead: {code:java} assertEquals(null, t.createComparator(Bytes.BYTES_RAWCOMPARATOR.getClass().getName())); 129 assertEquals(null, t.createComparator("org.apache.hadoop.hbase.KeyValue$RawBytesComparator"));{code} > NullPointerException during reading bloom filter when upgraded from hbase-1 > to hbase-2 > -- > > Key: HBASE-20135 > URL: https://issues.apache.org/jira/browse/HBASE-20135 > Project: HBase > Issue Type: Improvement >Affects Versions: 2.0.0-beta-2 >Reporter: Umesh Agashe >Assignee: Sakthi >Priority: Minor > Fix For: 2.0.0 > > Attachments: hbase-20135.master.001.patch > > > When upgraded from hbase-1 to hbase-2, found following exception logged > multiple times in the log: > {code:java} > ERROR [StoreFileOpenerThread-test_cf-1] regionserver.StoreFileReader: Error > reading bloom filter meta for GENERAL_BLOOM_META -- proceeding without > java.io.IOException: Comparator class > org.apache.hadoop.hbase.KeyValue$RawBytesComparator is not instantiable > at > org.apache.hadoop.hbase.io.hfile.FixedFileTrailer.createComparator(FixedFileTrailer.java:628) > at > org.apache.hadoop.hbase.io.hfile.CompoundBloomFilter.(CompoundBloomFilter.java:79) > at > org.apache.hadoop.hbase.util.BloomFilterFactory.createFromMeta(BloomFilterFactory.java:104) > at > org.apache.hadoop.hbase.regionserver.StoreFileReader.loadBloomfilter(StoreFileReader.java:479) > at > org.apache.hadoop.hbase.regionserver.HStoreFile.open(HStoreFile.java:425) > at > org.apache.hadoop.hbase.regionserver.HStoreFile.initReader(HStoreFile.java:460) > at > org.apache.hadoop.hbase.regionserver.HStore.createStoreFileAndReader(HStore.java:671) > at > org.apache.hadoop.hbase.regionserver.HStore.lambda$openStoreFiles$0(HStore.java:537) > at java.util.concurrent.FutureTask.run(FutureTask.java:266) > at > java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) > at java.util.concurrent.FutureTask.run(FutureTask.java:266) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) > at java.lang.Thread.run(Thread.java:748) > Caused by: java.lang.NullPointerException{code} > > Analysis from [~anoop.hbase]: > Checking the related code. There seems no issue.. We are not going > to even fail reading the bloom. In 2.0 code base we expect the > comparator class name to be null. But in 1.x we write old KV based > Raw Bytes comparator class name. So reading that back, we will return > class name as null and we get NPE it looks like. > {code:java} > else if > (comparatorClassName.equals("org.apache.hadoop.hbase.KeyValue$RawBytesComparator") > || > comparatorClassName.equals("org.apache.hadoop.hbase.util.Bytes$ByteArrayComparator")) > { > // When the comparator to be used is Bytes.BYTES_RAWCOMPARATOR, > we just return null from here > // Bytes.BYTES_RAWCOMPARATOR is not a CellComparator > comparatorKlass = null; > } > {code} > We can better do a null check before trying the comparator class > instantiation so that we can avoid this scary error logs -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HBASE-20135) NullPointerException during reading bloom filter when upgraded from hbase-1 to hbase-2
[ https://issues.apache.org/jira/browse/HBASE-20135?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16397678#comment-16397678 ] Umesh Agashe commented on HBASE-20135: -- Thanks [~jatsakthi] for taking this one. > NullPointerException during reading bloom filter when upgraded from hbase-1 > to hbase-2 > -- > > Key: HBASE-20135 > URL: https://issues.apache.org/jira/browse/HBASE-20135 > Project: HBase > Issue Type: Improvement >Affects Versions: 2.0.0-beta-2 >Reporter: Umesh Agashe >Assignee: Sakthi >Priority: Minor > Fix For: 2.0.0 > > > When upgraded from hbase-1 to hbase-2, found following exception logged > multiple times in the log: > {code:java} > ERROR [StoreFileOpenerThread-test_cf-1] regionserver.StoreFileReader: Error > reading bloom filter meta for GENERAL_BLOOM_META -- proceeding without > java.io.IOException: Comparator class > org.apache.hadoop.hbase.KeyValue$RawBytesComparator is not instantiable > at > org.apache.hadoop.hbase.io.hfile.FixedFileTrailer.createComparator(FixedFileTrailer.java:628) > at > org.apache.hadoop.hbase.io.hfile.CompoundBloomFilter.(CompoundBloomFilter.java:79) > at > org.apache.hadoop.hbase.util.BloomFilterFactory.createFromMeta(BloomFilterFactory.java:104) > at > org.apache.hadoop.hbase.regionserver.StoreFileReader.loadBloomfilter(StoreFileReader.java:479) > at > org.apache.hadoop.hbase.regionserver.HStoreFile.open(HStoreFile.java:425) > at > org.apache.hadoop.hbase.regionserver.HStoreFile.initReader(HStoreFile.java:460) > at > org.apache.hadoop.hbase.regionserver.HStore.createStoreFileAndReader(HStore.java:671) > at > org.apache.hadoop.hbase.regionserver.HStore.lambda$openStoreFiles$0(HStore.java:537) > at java.util.concurrent.FutureTask.run(FutureTask.java:266) > at > java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) > at java.util.concurrent.FutureTask.run(FutureTask.java:266) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) > at java.lang.Thread.run(Thread.java:748) > Caused by: java.lang.NullPointerException{code} > > Analysis from [~anoop.hbase]: > Checking the related code. There seems no issue.. We are not going > to even fail reading the bloom. In 2.0 code base we expect the > comparator class name to be null. But in 1.x we write old KV based > Raw Bytes comparator class name. So reading that back, we will return > class name as null and we get NPE it looks like. > {code} > else if > (comparatorClassName.equals("org.apache.hadoop.hbase.KeyValue$RawBytesComparator") > || > comparatorClassName.equals("org.apache.hadoop.hbase.util.Bytes$ByteArrayComparator")) > { > // When the comparator to be used is Bytes.BYTES_RAWCOMPARATOR, > we just return null from here > // Bytes.BYTES_RAWCOMPARATOR is not a CellComparator > comparatorKlass = null; > } > {code} > We can better do a null check before trying the comparator class > instantiation so that we can avoid this scary error logs -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HBASE-20135) NullPointerException during reading bloom filter when upgraded from hbase-1 to hbase-2
[ https://issues.apache.org/jira/browse/HBASE-20135?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16397677#comment-16397677 ] Sakthi commented on HBASE-20135: Hello Umesh, I would like to look into this issue. Do you mind if I assign it to myself? > NullPointerException during reading bloom filter when upgraded from hbase-1 > to hbase-2 > -- > > Key: HBASE-20135 > URL: https://issues.apache.org/jira/browse/HBASE-20135 > Project: HBase > Issue Type: Improvement >Affects Versions: 2.0.0-beta-2 >Reporter: Umesh Agashe >Priority: Minor > Fix For: 2.0.0 > > > When upgraded from hbase-1 to hbase-2, found following exception logged > multiple times in the log: > {code:java} > ERROR [StoreFileOpenerThread-test_cf-1] regionserver.StoreFileReader: Error > reading bloom filter meta for GENERAL_BLOOM_META -- proceeding without > java.io.IOException: Comparator class > org.apache.hadoop.hbase.KeyValue$RawBytesComparator is not instantiable > at > org.apache.hadoop.hbase.io.hfile.FixedFileTrailer.createComparator(FixedFileTrailer.java:628) > at > org.apache.hadoop.hbase.io.hfile.CompoundBloomFilter.(CompoundBloomFilter.java:79) > at > org.apache.hadoop.hbase.util.BloomFilterFactory.createFromMeta(BloomFilterFactory.java:104) > at > org.apache.hadoop.hbase.regionserver.StoreFileReader.loadBloomfilter(StoreFileReader.java:479) > at > org.apache.hadoop.hbase.regionserver.HStoreFile.open(HStoreFile.java:425) > at > org.apache.hadoop.hbase.regionserver.HStoreFile.initReader(HStoreFile.java:460) > at > org.apache.hadoop.hbase.regionserver.HStore.createStoreFileAndReader(HStore.java:671) > at > org.apache.hadoop.hbase.regionserver.HStore.lambda$openStoreFiles$0(HStore.java:537) > at java.util.concurrent.FutureTask.run(FutureTask.java:266) > at > java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) > at java.util.concurrent.FutureTask.run(FutureTask.java:266) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) > at java.lang.Thread.run(Thread.java:748) > Caused by: java.lang.NullPointerException{code} > > Analysis from [~anoop.hbase]: > Checking the related code. There seems no issue.. We are not going > to even fail reading the bloom. In 2.0 code base we expect the > comparator class name to be null. But in 1.x we write old KV based > Raw Bytes comparator class name. So reading that back, we will return > class name as null and we get NPE it looks like. > {code} > else if > (comparatorClassName.equals("org.apache.hadoop.hbase.KeyValue$RawBytesComparator") > || > comparatorClassName.equals("org.apache.hadoop.hbase.util.Bytes$ByteArrayComparator")) > { > // When the comparator to be used is Bytes.BYTES_RAWCOMPARATOR, > we just return null from here > // Bytes.BYTES_RAWCOMPARATOR is not a CellComparator > comparatorKlass = null; > } > {code} > We can better do a null check before trying the comparator class > instantiation so that we can avoid this scary error logs -- This message was sent by Atlassian JIRA (v7.6.3#76005)