[ 
https://issues.apache.org/jira/browse/HBASE-30000?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nick Dimiduk reassigned HBASE-30000:
------------------------------------

    Assignee: Nick Dimiduk

> testCompactionWithCorruptBlock fails on branch-2.5
> --------------------------------------------------
>
>                 Key: HBASE-30000
>                 URL: https://issues.apache.org/jira/browse/HBASE-30000
>             Project: HBase
>          Issue Type: Bug
>          Components: test
>            Reporter: Xiao Liu
>            Assignee: Nick Dimiduk
>            Priority: Major
>             Fix For: 2.5.15
>
>
> {{TestCompaction.testCompactionWithCorruptBlock}} and 
> {{TestCompactionWithCoprocessor.testCompactionWithCorruptBlock}} seems fails 
> on branch-2.5 (failed jobs: 
> [https://github.com/apache/hbase/actions/runs/22986072981/job/66965524654?pr=7808|https://github.com/apache/hbase/actions/runs/22986072981/job/66965524654?pr=7808;]
>  
> [https://github.com/apache/hbase/actions/runs/22986072980/job/66942097646?pr=7808|https://github.com/apache/hbase/actions/runs/22986072980/job/66942097646?pr=7808;]
>  
> [https://github.com/apache/hbase/actions/runs/22986073013/job/66942069375?pr=7808])
> After reviewing the logs, I found that {{InnerStoreCellComparator}} was 
> introduced in HBASE-27788, but was only committed to branch-2.6+. HBASE-29131 
> introduced the option for post-compaction validation of HFiles for 
> branch-2.5+.
> local test it fails, command:
> {code:java}
> mvn test -pl hbase-server -am 
> -Dtest=TestCompaction#testCompactionWithCorruptBlock -Dhadoop.profile=3.0
> {code}
> more logs:
> {code:java}
> -------------------------------------------------------------------------------
> Test set: org.apache.hadoop.hbase.regionserver.TestCompaction
> -------------------------------------------------------------------------------
> Tests run: 1, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 1.896 s <<< 
> FAILURE! -- in org.apache.hadoop.hbase.regionserver.TestCompaction
> org.apache.hadoop.hbase.regionserver.TestCompaction.testCompactionWithCorruptBlock
>  -- Time elapsed: 1.751 s <<< FAILURE!
> java.lang.AssertionError:
> Expected: (an instance of java.io.IOException and hasProperty("message", a 
> string containing "not a gzip file"))
> but: an instance of java.io.IOException <java.lang.ClassNotFoundException: 
> org.apache.hadoop.hbase.InnerStoreCellComparator> is a 
> java.lang.ClassNotFoundException
> at org.hamcrest.MatcherAssert.assertThat(MatcherAssert.java:20)
> at org.hamcrest.MatcherAssert.assertThat(MatcherAssert.java:8)
> at 
> org.apache.hadoop.hbase.regionserver.TestCompaction.testCompactionWithCorruptBlock(TestCompaction.java:426)
> at java.base/java.lang.reflect.Method.invoke(Method.java:568)
> at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
> at java.base/java.lang.Thread.run(Thread.java:842)
> {code}
> {code:java}
> 2026-03-14T00:36:04,391 ERROR [Time-limited test] 
> regionserver.StoreEngine(266): Failed to open store file : 
> /xxx/hbase/hbase-server/target/test-data/12a10eac-7840-b4e6-5b4f-13aa0c5d3d87/data/default/testCompactionWithCorruptBlock/73b81086f3952f988b216d362fa5e148/.tmp/f460fd27673d4f5a9423ade8333567e0,
>  keeping it in tmp location
> org.apache.hadoop.hbase.io.hfile.CorruptHFileException: Problem reading HFile 
> Trailer from file 
> file:/xxx/hbase/hbase-server/target/test-data/12a10eac-7840-b4e6-5b4f-13aa0c5d3d87/data/default/testCompactionWithCorruptBlock/73b81086f3952f988b216d362fa5e148/.tmp/f460fd27673d4f5a9423ade8333567e0
> at 
> org.apache.hadoop.hbase.io.hfile.HFileInfo.initTrailerAndContext(HFileInfo.java:349)
> at org.apache.hadoop.hbase.io.hfile.HFileInfo.<init>(HFileInfo.java:123)
> at 
> org.apache.hadoop.hbase.regionserver.StoreFileInfo.initHFileInfo(StoreFileInfo.java:700)
> at org.apache.hadoop.hbase.regionserver.HStoreFile.open(HStoreFile.java:406)
> at 
> org.apache.hadoop.hbase.regionserver.HStoreFile.initReader(HStoreFile.java:538)
> at 
> org.apache.hadoop.hbase.regionserver.StoreEngine.createStoreFileAndReader(StoreEngine.java:230)
> at 
> org.apache.hadoop.hbase.regionserver.StoreEngine.createStoreFileAndReader(StoreEngine.java:223)
> at 
> org.apache.hadoop.hbase.regionserver.StoreEngine.validateStoreFile(StoreEngine.java:243)
> at 
> org.apache.hadoop.hbase.regionserver.StoreEngine.commitStoreFiles(StoreEngine.java:452)
> at org.apache.hadoop.hbase.regionserver.HStore.doCompaction(HStore.java:1191)
> at 
> org.apache.hadoop.hbase.regionserver.TestCompaction.testCompactionWithCorruptBlock(TestCompaction.java:419)
> at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native 
> Method)
> at 
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
> at 
> java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.base/java.lang.reflect.Method.invoke(Method.java:568)
> at 
> org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59)
> at 
> org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
> at 
> org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:56)
> at 
> org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
> at 
> org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
> at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
> at org.junit.rules.TestWatcher$1.evaluate(TestWatcher.java:61)
> at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
> at 
> org.junit.runners.BlockJUnit4ClassRunner$1.evaluate(BlockJUnit4ClassRunner.java:100)
> at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:366)
> at 
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:103)
> at 
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:63)
> at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
> at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)
> at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)
> at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)
> at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)
> at 
> org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:299)
> at 
> org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:293)
> at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
> at java.base/java.lang.Thread.run(Thread.java:842)
> Caused by: java.io.IOException: java.lang.ClassNotFoundException: 
> org.apache.hadoop.hbase.InnerStoreCellComparator
> at 
> org.apache.hadoop.hbase.io.hfile.FixedFileTrailer.getComparatorClass(FixedFileTrailer.java:625)
> at 
> org.apache.hadoop.hbase.io.hfile.FixedFileTrailer.deserializeFromPB(FixedFileTrailer.java:308)
> at 
> org.apache.hadoop.hbase.io.hfile.FixedFileTrailer.deserialize(FixedFileTrailer.java:254)
> at 
> org.apache.hadoop.hbase.io.hfile.FixedFileTrailer.readFromStream(FixedFileTrailer.java:411)
> at 
> org.apache.hadoop.hbase.io.hfile.HFileInfo.initTrailerAndContext(HFileInfo.java:339)
> ... 35 more
> Caused by: java.lang.ClassNotFoundException: 
> org.apache.hadoop.hbase.InnerStoreCellComparator
> at 
> java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641)
> at 
> java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)
> at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:525)
> at java.base/java.lang.Class.forName0(Native Method)
> at java.base/java.lang.Class.forName(Class.java:375)
> at 
> org.apache.hadoop.hbase.io.hfile.FixedFileTrailer.getComparatorClass(FixedFileTrailer.java:623)
> ... 39 more
> {code}
>  



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

Reply via email to