[jira] [Commented] (HBASE-25827) Per Cell TTL tags get duplicated with increments causing tags length overflow
[ https://issues.apache.org/jira/browse/HBASE-25827?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17349911#comment-17349911 ] Hudson commented on HBASE-25827: Results for branch branch-2.4 [build #124 on builds.a.o|https://ci-hadoop.apache.org/job/HBase/job/HBase%20Nightly/job/branch-2.4/124/]: (x) *{color:red}-1 overall{color}* details (if available): (/) {color:green}+1 general checks{color} -- For more information [see general report|https://ci-hadoop.apache.org/job/HBase/job/HBase%20Nightly/job/branch-2.4/124/General_20Nightly_20Build_20Report/] (/) {color:green}+1 jdk8 hadoop2 checks{color} -- For more information [see jdk8 (hadoop2) report|https://ci-hadoop.apache.org/job/HBase/job/HBase%20Nightly/job/branch-2.4/124/JDK8_20Nightly_20Build_20Report_20_28Hadoop2_29/] (/) {color:green}+1 jdk8 hadoop3 checks{color} -- For more information [see jdk8 (hadoop3) report|https://ci-hadoop.apache.org/job/HBase/job/HBase%20Nightly/job/branch-2.4/124/JDK8_20Nightly_20Build_20Report_20_28Hadoop3_29/] (/) {color:green}+1 jdk11 hadoop3 checks{color} -- For more information [see jdk11 report|https://ci-hadoop.apache.org/job/HBase/job/HBase%20Nightly/job/branch-2.4/124/JDK11_20Nightly_20Build_20Report_20_28Hadoop3_29/] (/) {color:green}+1 source release artifact{color} -- See build output for details. (/) {color:green}+1 client integration test{color} > Per Cell TTL tags get duplicated with increments causing tags length overflow > - > > Key: HBASE-25827 > URL: https://issues.apache.org/jira/browse/HBASE-25827 > Project: HBase > Issue Type: Bug > Components: regionserver >Affects Versions: 3.0.0-alpha-1, 2.1.9, 2.2.6 >Reporter: Shashank Thillainathan >Assignee: Rushabh Shah >Priority: Critical > Fix For: 3.0.0-alpha-1, 2.5.0, 2.4.4 > > > Incrementing with per cell TTL and flushing corrupts the HFile. > > Reproducing the issue: > Incrementing a row and a column with per cell TTL for about 3 thousand times > and flushing corrupts the HFile leaving the table unusable. > Cause: > On reading the HFile, it is found that duplicate TTL tags get appended for > each cell. > Though this case has already been addressed here at HBASE-18030, corruption > still occurs even with this patch. > {code:java} > java.lang.IllegalStateException: Invalid currTagsLen -32767. Block offset: > 16665, block length: 65596, position: 0 (without header). > path=hdfs://hdfs/file/path > at > org.apache.hadoop.hbase.io.hfile.HFileReaderImpl$HFileScannerImpl.checkTagsLen(HFileReaderImpl.java:642) > at > org.apache.hadoop.hbase.io.hfile.HFileReaderImpl$HFileScannerImpl.readKeyValueLen(HFileReaderImpl.java:630) > at > org.apache.hadoop.hbase.io.hfile.HFileReaderImpl$HFileScannerImpl.updateCurrentBlock(HFileReaderImpl.java:1206) > at > org.apache.hadoop.hbase.io.hfile.HFileReaderImpl$HFileScannerImpl.loadBlockAndSeekToKey(HFileReaderImpl.java:1149) > at > org.apache.hadoop.hbase.io.hfile.HFileReaderImpl$HFileScannerImpl.seekTo(HFileReaderImpl.java:863) > at > org.apache.hadoop.hbase.io.hfile.HFileReaderImpl$HFileScannerImpl.reseekTo(HFileReaderImpl.java:837) > at > org.apache.hadoop.hbase.regionserver.StoreFileScanner.reseekAtOrAfter(StoreFileScanner.java:347) > at > org.apache.hadoop.hbase.regionserver.StoreFileScanner.reseek(StoreFileScanner.java:256) > at > org.apache.hadoop.hbase.regionserver.StoreFileScanner.enforceSeek(StoreFileScanner.java:469) > at > org.apache.hadoop.hbase.regionserver.KeyValueHeap.pollRealKV(KeyValueHeap.java:369) > at > org.apache.hadoop.hbase.regionserver.KeyValueHeap.generalizedSeek(KeyValueHeap.java:311) > at > org.apache.hadoop.hbase.regionserver.KeyValueHeap.requestSeek(KeyValueHeap.java:275) > at > org.apache.hadoop.hbase.regionserver.StoreScanner.reseek(StoreScanner.java:1038) > at > org.apache.hadoop.hbase.regionserver.StoreScanner.seekAsDirection(StoreScanner.java:1029) > at > org.apache.hadoop.hbase.regionserver.StoreScanner.seekOrSkipToNextColumn(StoreScanner.java:764) > at > org.apache.hadoop.hbase.regionserver.StoreScanner.next(StoreScanner.java:695) > at > org.apache.hadoop.hbase.regionserver.KeyValueHeap.next(KeyValueHeap.java:153) > at > org.apache.hadoop.hbase.regionserver.HRegion$RegionScannerImpl.populateResult(HRegion.java:6593) > at > org.apache.hadoop.hbase.regionserver.HRegion$RegionScannerImpl.nextInternal(HRegion.java:6757) > at > org.apache.hadoop.hbase.regionserver.HRegion$RegionScannerImpl.nextRaw(HRegion.java:6527) > at > org.apache.hadoop.hbase.regionserver.HRegion$RegionScannerImpl.next(HRegion.java:6504) >
[jira] [Commented] (HBASE-25827) Per Cell TTL tags get duplicated with increments causing tags length overflow
[ https://issues.apache.org/jira/browse/HBASE-25827?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17349905#comment-17349905 ] Hudson commented on HBASE-25827: Results for branch branch-2 [build #257 on builds.a.o|https://ci-hadoop.apache.org/job/HBase/job/HBase%20Nightly/job/branch-2/257/]: (x) *{color:red}-1 overall{color}* details (if available): (/) {color:green}+1 general checks{color} -- For more information [see general report|https://ci-hadoop.apache.org/job/HBase/job/HBase%20Nightly/job/branch-2/257/General_20Nightly_20Build_20Report/] (/) {color:green}+1 jdk8 hadoop2 checks{color} -- For more information [see jdk8 (hadoop2) report|https://ci-hadoop.apache.org/job/HBase/job/HBase%20Nightly/job/branch-2/257/JDK8_20Nightly_20Build_20Report_20_28Hadoop2_29/] (/) {color:green}+1 jdk8 hadoop3 checks{color} -- For more information [see jdk8 (hadoop3) report|https://ci-hadoop.apache.org/job/HBase/job/HBase%20Nightly/job/branch-2/257/JDK8_20Nightly_20Build_20Report_20_28Hadoop3_29/] (/) {color:green}+1 jdk11 hadoop3 checks{color} -- For more information [see jdk11 report|https://ci-hadoop.apache.org/job/HBase/job/HBase%20Nightly/job/branch-2/257/JDK11_20Nightly_20Build_20Report_20_28Hadoop3_29/] (/) {color:green}+1 source release artifact{color} -- See build output for details. (x) {color:red}-1 client integration test{color} --Failed when running client tests on top of Hadoop 2. [see log for details|https://ci-hadoop.apache.org/job/HBase/job/HBase%20Nightly/job/branch-2/257//artifact/output-integration/hadoop-2.log]. (note that this means we didn't run on Hadoop 3) > Per Cell TTL tags get duplicated with increments causing tags length overflow > - > > Key: HBASE-25827 > URL: https://issues.apache.org/jira/browse/HBASE-25827 > Project: HBase > Issue Type: Bug > Components: regionserver >Affects Versions: 3.0.0-alpha-1, 2.1.9, 2.2.6 >Reporter: Shashank Thillainathan >Assignee: Rushabh Shah >Priority: Critical > Fix For: 3.0.0-alpha-1, 2.5.0, 2.4.4 > > > Incrementing with per cell TTL and flushing corrupts the HFile. > > Reproducing the issue: > Incrementing a row and a column with per cell TTL for about 3 thousand times > and flushing corrupts the HFile leaving the table unusable. > Cause: > On reading the HFile, it is found that duplicate TTL tags get appended for > each cell. > Though this case has already been addressed here at HBASE-18030, corruption > still occurs even with this patch. > {code:java} > java.lang.IllegalStateException: Invalid currTagsLen -32767. Block offset: > 16665, block length: 65596, position: 0 (without header). > path=hdfs://hdfs/file/path > at > org.apache.hadoop.hbase.io.hfile.HFileReaderImpl$HFileScannerImpl.checkTagsLen(HFileReaderImpl.java:642) > at > org.apache.hadoop.hbase.io.hfile.HFileReaderImpl$HFileScannerImpl.readKeyValueLen(HFileReaderImpl.java:630) > at > org.apache.hadoop.hbase.io.hfile.HFileReaderImpl$HFileScannerImpl.updateCurrentBlock(HFileReaderImpl.java:1206) > at > org.apache.hadoop.hbase.io.hfile.HFileReaderImpl$HFileScannerImpl.loadBlockAndSeekToKey(HFileReaderImpl.java:1149) > at > org.apache.hadoop.hbase.io.hfile.HFileReaderImpl$HFileScannerImpl.seekTo(HFileReaderImpl.java:863) > at > org.apache.hadoop.hbase.io.hfile.HFileReaderImpl$HFileScannerImpl.reseekTo(HFileReaderImpl.java:837) > at > org.apache.hadoop.hbase.regionserver.StoreFileScanner.reseekAtOrAfter(StoreFileScanner.java:347) > at > org.apache.hadoop.hbase.regionserver.StoreFileScanner.reseek(StoreFileScanner.java:256) > at > org.apache.hadoop.hbase.regionserver.StoreFileScanner.enforceSeek(StoreFileScanner.java:469) > at > org.apache.hadoop.hbase.regionserver.KeyValueHeap.pollRealKV(KeyValueHeap.java:369) > at > org.apache.hadoop.hbase.regionserver.KeyValueHeap.generalizedSeek(KeyValueHeap.java:311) > at > org.apache.hadoop.hbase.regionserver.KeyValueHeap.requestSeek(KeyValueHeap.java:275) > at > org.apache.hadoop.hbase.regionserver.StoreScanner.reseek(StoreScanner.java:1038) > at > org.apache.hadoop.hbase.regionserver.StoreScanner.seekAsDirection(StoreScanner.java:1029) > at > org.apache.hadoop.hbase.regionserver.StoreScanner.seekOrSkipToNextColumn(StoreScanner.java:764) > at > org.apache.hadoop.hbase.regionserver.StoreScanner.next(StoreScanner.java:695) > at > org.apache.hadoop.hbase.regionserver.KeyValueHeap.next(KeyValueHeap.java:153) > at > org.apache.hadoop.hbase.regionserver.HRegion$RegionScannerImpl.populateResult(HRegion.java:6593) > at >
[jira] [Commented] (HBASE-25827) Per Cell TTL tags get duplicated with increments causing tags length overflow
[ https://issues.apache.org/jira/browse/HBASE-25827?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17349827#comment-17349827 ] Hudson commented on HBASE-25827: Results for branch master [build #300 on builds.a.o|https://ci-hadoop.apache.org/job/HBase/job/HBase%20Nightly/job/master/300/]: (x) *{color:red}-1 overall{color}* details (if available): (/) {color:green}+1 general checks{color} -- For more information [see general report|https://ci-hadoop.apache.org/job/HBase/job/HBase%20Nightly/job/master/300/General_20Nightly_20Build_20Report/] (/) {color:green}+1 jdk8 hadoop3 checks{color} -- For more information [see jdk8 (hadoop3) report|https://ci-hadoop.apache.org/job/HBase/job/HBase%20Nightly/job/master/300/JDK8_20Nightly_20Build_20Report_20_28Hadoop3_29/] (/) {color:green}+1 jdk11 hadoop3 checks{color} -- For more information [see jdk11 report|https://ci-hadoop.apache.org/job/HBase/job/HBase%20Nightly/job/master/300/JDK11_20Nightly_20Build_20Report_20_28Hadoop3_29/] (/) {color:green}+1 source release artifact{color} -- See build output for details. (x) {color:red}-1 client integration test{color} --Failed when running client tests on top of Hadoop 3. [see log for details|https://ci-hadoop.apache.org/job/HBase/job/HBase%20Nightly/job/master/300//artifact/output-integration/hadoop-3.log]. (note that this means we didn't check the Hadoop 3 shaded client) > Per Cell TTL tags get duplicated with increments causing tags length overflow > - > > Key: HBASE-25827 > URL: https://issues.apache.org/jira/browse/HBASE-25827 > Project: HBase > Issue Type: Bug > Components: regionserver >Affects Versions: 3.0.0-alpha-1, 2.1.9, 2.2.6 >Reporter: Shashank Thillainathan >Assignee: Rushabh Shah >Priority: Critical > Fix For: 3.0.0-alpha-1, 2.5.0, 2.4.4 > > > Incrementing with per cell TTL and flushing corrupts the HFile. > > Reproducing the issue: > Incrementing a row and a column with per cell TTL for about 3 thousand times > and flushing corrupts the HFile leaving the table unusable. > Cause: > On reading the HFile, it is found that duplicate TTL tags get appended for > each cell. > Though this case has already been addressed here at HBASE-18030, corruption > still occurs even with this patch. > {code:java} > java.lang.IllegalStateException: Invalid currTagsLen -32767. Block offset: > 16665, block length: 65596, position: 0 (without header). > path=hdfs://hdfs/file/path > at > org.apache.hadoop.hbase.io.hfile.HFileReaderImpl$HFileScannerImpl.checkTagsLen(HFileReaderImpl.java:642) > at > org.apache.hadoop.hbase.io.hfile.HFileReaderImpl$HFileScannerImpl.readKeyValueLen(HFileReaderImpl.java:630) > at > org.apache.hadoop.hbase.io.hfile.HFileReaderImpl$HFileScannerImpl.updateCurrentBlock(HFileReaderImpl.java:1206) > at > org.apache.hadoop.hbase.io.hfile.HFileReaderImpl$HFileScannerImpl.loadBlockAndSeekToKey(HFileReaderImpl.java:1149) > at > org.apache.hadoop.hbase.io.hfile.HFileReaderImpl$HFileScannerImpl.seekTo(HFileReaderImpl.java:863) > at > org.apache.hadoop.hbase.io.hfile.HFileReaderImpl$HFileScannerImpl.reseekTo(HFileReaderImpl.java:837) > at > org.apache.hadoop.hbase.regionserver.StoreFileScanner.reseekAtOrAfter(StoreFileScanner.java:347) > at > org.apache.hadoop.hbase.regionserver.StoreFileScanner.reseek(StoreFileScanner.java:256) > at > org.apache.hadoop.hbase.regionserver.StoreFileScanner.enforceSeek(StoreFileScanner.java:469) > at > org.apache.hadoop.hbase.regionserver.KeyValueHeap.pollRealKV(KeyValueHeap.java:369) > at > org.apache.hadoop.hbase.regionserver.KeyValueHeap.generalizedSeek(KeyValueHeap.java:311) > at > org.apache.hadoop.hbase.regionserver.KeyValueHeap.requestSeek(KeyValueHeap.java:275) > at > org.apache.hadoop.hbase.regionserver.StoreScanner.reseek(StoreScanner.java:1038) > at > org.apache.hadoop.hbase.regionserver.StoreScanner.seekAsDirection(StoreScanner.java:1029) > at > org.apache.hadoop.hbase.regionserver.StoreScanner.seekOrSkipToNextColumn(StoreScanner.java:764) > at > org.apache.hadoop.hbase.regionserver.StoreScanner.next(StoreScanner.java:695) > at > org.apache.hadoop.hbase.regionserver.KeyValueHeap.next(KeyValueHeap.java:153) > at > org.apache.hadoop.hbase.regionserver.HRegion$RegionScannerImpl.populateResult(HRegion.java:6593) > at > org.apache.hadoop.hbase.regionserver.HRegion$RegionScannerImpl.nextInternal(HRegion.java:6757) > at > org.apache.hadoop.hbase.regionserver.HRegion$RegionScannerImpl.nextRaw(HRegion.java:6527) > at >
[jira] [Commented] (HBASE-25827) Per Cell TTL tags get duplicated with increments causing tags length overflow
[ https://issues.apache.org/jira/browse/HBASE-25827?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17349404#comment-17349404 ] Viraj Jasani commented on HBASE-25827: -- [~shahrs87] [~mohamed.meeran] If you want the patch in branch-2.3, please create a PR as branch-2 patch is not cleanly applied there. Merged it to master, branch-2 and branch-2.4 so far. Closing the Jira and once PR is opened, I can reopen this Jira and close again with updated fixVersions. Thanks > Per Cell TTL tags get duplicated with increments causing tags length overflow > - > > Key: HBASE-25827 > URL: https://issues.apache.org/jira/browse/HBASE-25827 > Project: HBase > Issue Type: Bug > Components: regionserver >Affects Versions: 3.0.0-alpha-1, 2.1.9, 2.2.6 >Reporter: Shashank Thillainathan >Assignee: Rushabh Shah >Priority: Critical > > Incrementing with per cell TTL and flushing corrupts the HFile. > > Reproducing the issue: > Incrementing a row and a column with per cell TTL for about 3 thousand times > and flushing corrupts the HFile leaving the table unusable. > Cause: > On reading the HFile, it is found that duplicate TTL tags get appended for > each cell. > Though this case has already been addressed here at HBASE-18030, corruption > still occurs even with this patch. > {code:java} > java.lang.IllegalStateException: Invalid currTagsLen -32767. Block offset: > 16665, block length: 65596, position: 0 (without header). > path=hdfs://hdfs/file/path > at > org.apache.hadoop.hbase.io.hfile.HFileReaderImpl$HFileScannerImpl.checkTagsLen(HFileReaderImpl.java:642) > at > org.apache.hadoop.hbase.io.hfile.HFileReaderImpl$HFileScannerImpl.readKeyValueLen(HFileReaderImpl.java:630) > at > org.apache.hadoop.hbase.io.hfile.HFileReaderImpl$HFileScannerImpl.updateCurrentBlock(HFileReaderImpl.java:1206) > at > org.apache.hadoop.hbase.io.hfile.HFileReaderImpl$HFileScannerImpl.loadBlockAndSeekToKey(HFileReaderImpl.java:1149) > at > org.apache.hadoop.hbase.io.hfile.HFileReaderImpl$HFileScannerImpl.seekTo(HFileReaderImpl.java:863) > at > org.apache.hadoop.hbase.io.hfile.HFileReaderImpl$HFileScannerImpl.reseekTo(HFileReaderImpl.java:837) > at > org.apache.hadoop.hbase.regionserver.StoreFileScanner.reseekAtOrAfter(StoreFileScanner.java:347) > at > org.apache.hadoop.hbase.regionserver.StoreFileScanner.reseek(StoreFileScanner.java:256) > at > org.apache.hadoop.hbase.regionserver.StoreFileScanner.enforceSeek(StoreFileScanner.java:469) > at > org.apache.hadoop.hbase.regionserver.KeyValueHeap.pollRealKV(KeyValueHeap.java:369) > at > org.apache.hadoop.hbase.regionserver.KeyValueHeap.generalizedSeek(KeyValueHeap.java:311) > at > org.apache.hadoop.hbase.regionserver.KeyValueHeap.requestSeek(KeyValueHeap.java:275) > at > org.apache.hadoop.hbase.regionserver.StoreScanner.reseek(StoreScanner.java:1038) > at > org.apache.hadoop.hbase.regionserver.StoreScanner.seekAsDirection(StoreScanner.java:1029) > at > org.apache.hadoop.hbase.regionserver.StoreScanner.seekOrSkipToNextColumn(StoreScanner.java:764) > at > org.apache.hadoop.hbase.regionserver.StoreScanner.next(StoreScanner.java:695) > at > org.apache.hadoop.hbase.regionserver.KeyValueHeap.next(KeyValueHeap.java:153) > at > org.apache.hadoop.hbase.regionserver.HRegion$RegionScannerImpl.populateResult(HRegion.java:6593) > at > org.apache.hadoop.hbase.regionserver.HRegion$RegionScannerImpl.nextInternal(HRegion.java:6757) > at > org.apache.hadoop.hbase.regionserver.HRegion$RegionScannerImpl.nextRaw(HRegion.java:6527) > at > org.apache.hadoop.hbase.regionserver.HRegion$RegionScannerImpl.next(HRegion.java:6504) > at > org.apache.hadoop.hbase.regionserver.HRegion$RegionScannerImpl.next(HRegion.java:6491) > at org.apache.hadoop.hbase.regionserver.HRegion.get(HRegion.java:7458) > at org.apache.hadoop.hbase.regionserver.HRegion.get(HRegion.java:7436) > at org.apache.hadoop.hbase.regionserver.HRegion.get(HRegion.java:8123) > at > org.apache.hadoop.hbase.regionserver.HRegion.reckonDeltasByStore(HRegion.java:8003) > at > org.apache.hadoop.hbase.regionserver.HRegion.reckonDeltas(HRegion.java:7958) > at > org.apache.hadoop.hbase.regionserver.HRegion.doDelta(HRegion.java:7805) > at > org.apache.hadoop.hbase.regionserver.HRegion.increment(HRegion.java:7767) > at > org.apache.hadoop.hbase.regionserver.RSRpcServices.increment(RSRpcServices.java:734) > at > org.apache.hadoop.hbase.regionserver.RSRpcServices.doNonAtomicRegionMutation(RSRpcServices.java:877) > at >
[jira] [Commented] (HBASE-25827) Per Cell TTL tags get duplicated with increments causing tags length overflow
[ https://issues.apache.org/jira/browse/HBASE-25827?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17349366#comment-17349366 ] Rushabh Shah commented on HBASE-25827: -- [~mohamed.meeran] Here is the PR: [https://github.com/apache/hbase/pull/3210] (master branch) [https://github.com/apache/hbase/pull/3290] (branch-2) [~vjasani] already approved the PR and should be committed anytime soon. > Per Cell TTL tags get duplicated with increments causing tags length overflow > - > > Key: HBASE-25827 > URL: https://issues.apache.org/jira/browse/HBASE-25827 > Project: HBase > Issue Type: Bug > Components: regionserver >Affects Versions: 3.0.0-alpha-1, 2.1.9, 2.2.6 >Reporter: Shashank Thillainathan >Assignee: Rushabh Shah >Priority: Critical > > Incrementing with per cell TTL and flushing corrupts the HFile. > > Reproducing the issue: > Incrementing a row and a column with per cell TTL for about 3 thousand times > and flushing corrupts the HFile leaving the table unusable. > Cause: > On reading the HFile, it is found that duplicate TTL tags get appended for > each cell. > Though this case has already been addressed here at HBASE-18030, corruption > still occurs even with this patch. > {code:java} > java.lang.IllegalStateException: Invalid currTagsLen -32767. Block offset: > 16665, block length: 65596, position: 0 (without header). > path=hdfs://hdfs/file/path > at > org.apache.hadoop.hbase.io.hfile.HFileReaderImpl$HFileScannerImpl.checkTagsLen(HFileReaderImpl.java:642) > at > org.apache.hadoop.hbase.io.hfile.HFileReaderImpl$HFileScannerImpl.readKeyValueLen(HFileReaderImpl.java:630) > at > org.apache.hadoop.hbase.io.hfile.HFileReaderImpl$HFileScannerImpl.updateCurrentBlock(HFileReaderImpl.java:1206) > at > org.apache.hadoop.hbase.io.hfile.HFileReaderImpl$HFileScannerImpl.loadBlockAndSeekToKey(HFileReaderImpl.java:1149) > at > org.apache.hadoop.hbase.io.hfile.HFileReaderImpl$HFileScannerImpl.seekTo(HFileReaderImpl.java:863) > at > org.apache.hadoop.hbase.io.hfile.HFileReaderImpl$HFileScannerImpl.reseekTo(HFileReaderImpl.java:837) > at > org.apache.hadoop.hbase.regionserver.StoreFileScanner.reseekAtOrAfter(StoreFileScanner.java:347) > at > org.apache.hadoop.hbase.regionserver.StoreFileScanner.reseek(StoreFileScanner.java:256) > at > org.apache.hadoop.hbase.regionserver.StoreFileScanner.enforceSeek(StoreFileScanner.java:469) > at > org.apache.hadoop.hbase.regionserver.KeyValueHeap.pollRealKV(KeyValueHeap.java:369) > at > org.apache.hadoop.hbase.regionserver.KeyValueHeap.generalizedSeek(KeyValueHeap.java:311) > at > org.apache.hadoop.hbase.regionserver.KeyValueHeap.requestSeek(KeyValueHeap.java:275) > at > org.apache.hadoop.hbase.regionserver.StoreScanner.reseek(StoreScanner.java:1038) > at > org.apache.hadoop.hbase.regionserver.StoreScanner.seekAsDirection(StoreScanner.java:1029) > at > org.apache.hadoop.hbase.regionserver.StoreScanner.seekOrSkipToNextColumn(StoreScanner.java:764) > at > org.apache.hadoop.hbase.regionserver.StoreScanner.next(StoreScanner.java:695) > at > org.apache.hadoop.hbase.regionserver.KeyValueHeap.next(KeyValueHeap.java:153) > at > org.apache.hadoop.hbase.regionserver.HRegion$RegionScannerImpl.populateResult(HRegion.java:6593) > at > org.apache.hadoop.hbase.regionserver.HRegion$RegionScannerImpl.nextInternal(HRegion.java:6757) > at > org.apache.hadoop.hbase.regionserver.HRegion$RegionScannerImpl.nextRaw(HRegion.java:6527) > at > org.apache.hadoop.hbase.regionserver.HRegion$RegionScannerImpl.next(HRegion.java:6504) > at > org.apache.hadoop.hbase.regionserver.HRegion$RegionScannerImpl.next(HRegion.java:6491) > at org.apache.hadoop.hbase.regionserver.HRegion.get(HRegion.java:7458) > at org.apache.hadoop.hbase.regionserver.HRegion.get(HRegion.java:7436) > at org.apache.hadoop.hbase.regionserver.HRegion.get(HRegion.java:8123) > at > org.apache.hadoop.hbase.regionserver.HRegion.reckonDeltasByStore(HRegion.java:8003) > at > org.apache.hadoop.hbase.regionserver.HRegion.reckonDeltas(HRegion.java:7958) > at > org.apache.hadoop.hbase.regionserver.HRegion.doDelta(HRegion.java:7805) > at > org.apache.hadoop.hbase.regionserver.HRegion.increment(HRegion.java:7767) > at > org.apache.hadoop.hbase.regionserver.RSRpcServices.increment(RSRpcServices.java:734) > at > org.apache.hadoop.hbase.regionserver.RSRpcServices.doNonAtomicRegionMutation(RSRpcServices.java:877) > at > org.apache.hadoop.hbase.regionserver.RSRpcServices.multi(RSRpcServices.java:2705) > at >
[jira] [Commented] (HBASE-25827) Per Cell TTL tags get duplicated with increments causing tags length overflow
[ https://issues.apache.org/jira/browse/HBASE-25827?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17349360#comment-17349360 ] Mohamed Mohideen Meeran commented on HBASE-25827: - Hi Rushabh Shah, Any update on the patch? > Per Cell TTL tags get duplicated with increments causing tags length overflow > - > > Key: HBASE-25827 > URL: https://issues.apache.org/jira/browse/HBASE-25827 > Project: HBase > Issue Type: Bug > Components: regionserver >Affects Versions: 3.0.0-alpha-1, 2.1.9, 2.2.6 >Reporter: Shashank Thillainathan >Assignee: Rushabh Shah >Priority: Critical > > Incrementing with per cell TTL and flushing corrupts the HFile. > > Reproducing the issue: > Incrementing a row and a column with per cell TTL for about 3 thousand times > and flushing corrupts the HFile leaving the table unusable. > Cause: > On reading the HFile, it is found that duplicate TTL tags get appended for > each cell. > Though this case has already been addressed here at HBASE-18030, corruption > still occurs even with this patch. > {code:java} > java.lang.IllegalStateException: Invalid currTagsLen -32767. Block offset: > 16665, block length: 65596, position: 0 (without header). > path=hdfs://hdfs/file/path > at > org.apache.hadoop.hbase.io.hfile.HFileReaderImpl$HFileScannerImpl.checkTagsLen(HFileReaderImpl.java:642) > at > org.apache.hadoop.hbase.io.hfile.HFileReaderImpl$HFileScannerImpl.readKeyValueLen(HFileReaderImpl.java:630) > at > org.apache.hadoop.hbase.io.hfile.HFileReaderImpl$HFileScannerImpl.updateCurrentBlock(HFileReaderImpl.java:1206) > at > org.apache.hadoop.hbase.io.hfile.HFileReaderImpl$HFileScannerImpl.loadBlockAndSeekToKey(HFileReaderImpl.java:1149) > at > org.apache.hadoop.hbase.io.hfile.HFileReaderImpl$HFileScannerImpl.seekTo(HFileReaderImpl.java:863) > at > org.apache.hadoop.hbase.io.hfile.HFileReaderImpl$HFileScannerImpl.reseekTo(HFileReaderImpl.java:837) > at > org.apache.hadoop.hbase.regionserver.StoreFileScanner.reseekAtOrAfter(StoreFileScanner.java:347) > at > org.apache.hadoop.hbase.regionserver.StoreFileScanner.reseek(StoreFileScanner.java:256) > at > org.apache.hadoop.hbase.regionserver.StoreFileScanner.enforceSeek(StoreFileScanner.java:469) > at > org.apache.hadoop.hbase.regionserver.KeyValueHeap.pollRealKV(KeyValueHeap.java:369) > at > org.apache.hadoop.hbase.regionserver.KeyValueHeap.generalizedSeek(KeyValueHeap.java:311) > at > org.apache.hadoop.hbase.regionserver.KeyValueHeap.requestSeek(KeyValueHeap.java:275) > at > org.apache.hadoop.hbase.regionserver.StoreScanner.reseek(StoreScanner.java:1038) > at > org.apache.hadoop.hbase.regionserver.StoreScanner.seekAsDirection(StoreScanner.java:1029) > at > org.apache.hadoop.hbase.regionserver.StoreScanner.seekOrSkipToNextColumn(StoreScanner.java:764) > at > org.apache.hadoop.hbase.regionserver.StoreScanner.next(StoreScanner.java:695) > at > org.apache.hadoop.hbase.regionserver.KeyValueHeap.next(KeyValueHeap.java:153) > at > org.apache.hadoop.hbase.regionserver.HRegion$RegionScannerImpl.populateResult(HRegion.java:6593) > at > org.apache.hadoop.hbase.regionserver.HRegion$RegionScannerImpl.nextInternal(HRegion.java:6757) > at > org.apache.hadoop.hbase.regionserver.HRegion$RegionScannerImpl.nextRaw(HRegion.java:6527) > at > org.apache.hadoop.hbase.regionserver.HRegion$RegionScannerImpl.next(HRegion.java:6504) > at > org.apache.hadoop.hbase.regionserver.HRegion$RegionScannerImpl.next(HRegion.java:6491) > at org.apache.hadoop.hbase.regionserver.HRegion.get(HRegion.java:7458) > at org.apache.hadoop.hbase.regionserver.HRegion.get(HRegion.java:7436) > at org.apache.hadoop.hbase.regionserver.HRegion.get(HRegion.java:8123) > at > org.apache.hadoop.hbase.regionserver.HRegion.reckonDeltasByStore(HRegion.java:8003) > at > org.apache.hadoop.hbase.regionserver.HRegion.reckonDeltas(HRegion.java:7958) > at > org.apache.hadoop.hbase.regionserver.HRegion.doDelta(HRegion.java:7805) > at > org.apache.hadoop.hbase.regionserver.HRegion.increment(HRegion.java:7767) > at > org.apache.hadoop.hbase.regionserver.RSRpcServices.increment(RSRpcServices.java:734) > at > org.apache.hadoop.hbase.regionserver.RSRpcServices.doNonAtomicRegionMutation(RSRpcServices.java:877) > at > org.apache.hadoop.hbase.regionserver.RSRpcServices.multi(RSRpcServices.java:2705) > at > org.apache.hadoop.hbase.shaded.protobuf.generated.ClientProtos$ClientService$2.callBlockingMethod(ClientProtos.java:42290) > at
[jira] [Commented] (HBASE-25827) Per Cell TTL tags get duplicated with increments causing tags length overflow
[ https://issues.apache.org/jira/browse/HBASE-25827?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17335551#comment-17335551 ] Rushabh Shah commented on HBASE-25827: -- I have test case to reproduce this issue. I am working on the patch. > Per Cell TTL tags get duplicated with increments causing tags length overflow > - > > Key: HBASE-25827 > URL: https://issues.apache.org/jira/browse/HBASE-25827 > Project: HBase > Issue Type: Bug > Components: regionserver >Affects Versions: 2.1.9, 2.2.6 >Reporter: Shashank Thillainathan >Assignee: Rushabh Shah >Priority: Critical > > Incrementing with per cell TTL and flushing corrupts the HFile. > > Reproducing the issue: > Incrementing a row and a column with per cell TTL for about 3 thousand times > and flushing corrupts the HFile leaving the table unusable. > Cause: > On reading the HFile, it is found that duplicate TTL tags get appended for > each cell. > Though this case has already been addressed here at HBASE-18030, corruption > still occurs even with this patch. > {code:java} > java.lang.IllegalStateException: Invalid currTagsLen -32767. Block offset: > 16665, block length: 65596, position: 0 (without header). > path=hdfs://hdfs/file/path > at > org.apache.hadoop.hbase.io.hfile.HFileReaderImpl$HFileScannerImpl.checkTagsLen(HFileReaderImpl.java:642) > at > org.apache.hadoop.hbase.io.hfile.HFileReaderImpl$HFileScannerImpl.readKeyValueLen(HFileReaderImpl.java:630) > at > org.apache.hadoop.hbase.io.hfile.HFileReaderImpl$HFileScannerImpl.updateCurrentBlock(HFileReaderImpl.java:1206) > at > org.apache.hadoop.hbase.io.hfile.HFileReaderImpl$HFileScannerImpl.loadBlockAndSeekToKey(HFileReaderImpl.java:1149) > at > org.apache.hadoop.hbase.io.hfile.HFileReaderImpl$HFileScannerImpl.seekTo(HFileReaderImpl.java:863) > at > org.apache.hadoop.hbase.io.hfile.HFileReaderImpl$HFileScannerImpl.reseekTo(HFileReaderImpl.java:837) > at > org.apache.hadoop.hbase.regionserver.StoreFileScanner.reseekAtOrAfter(StoreFileScanner.java:347) > at > org.apache.hadoop.hbase.regionserver.StoreFileScanner.reseek(StoreFileScanner.java:256) > at > org.apache.hadoop.hbase.regionserver.StoreFileScanner.enforceSeek(StoreFileScanner.java:469) > at > org.apache.hadoop.hbase.regionserver.KeyValueHeap.pollRealKV(KeyValueHeap.java:369) > at > org.apache.hadoop.hbase.regionserver.KeyValueHeap.generalizedSeek(KeyValueHeap.java:311) > at > org.apache.hadoop.hbase.regionserver.KeyValueHeap.requestSeek(KeyValueHeap.java:275) > at > org.apache.hadoop.hbase.regionserver.StoreScanner.reseek(StoreScanner.java:1038) > at > org.apache.hadoop.hbase.regionserver.StoreScanner.seekAsDirection(StoreScanner.java:1029) > at > org.apache.hadoop.hbase.regionserver.StoreScanner.seekOrSkipToNextColumn(StoreScanner.java:764) > at > org.apache.hadoop.hbase.regionserver.StoreScanner.next(StoreScanner.java:695) > at > org.apache.hadoop.hbase.regionserver.KeyValueHeap.next(KeyValueHeap.java:153) > at > org.apache.hadoop.hbase.regionserver.HRegion$RegionScannerImpl.populateResult(HRegion.java:6593) > at > org.apache.hadoop.hbase.regionserver.HRegion$RegionScannerImpl.nextInternal(HRegion.java:6757) > at > org.apache.hadoop.hbase.regionserver.HRegion$RegionScannerImpl.nextRaw(HRegion.java:6527) > at > org.apache.hadoop.hbase.regionserver.HRegion$RegionScannerImpl.next(HRegion.java:6504) > at > org.apache.hadoop.hbase.regionserver.HRegion$RegionScannerImpl.next(HRegion.java:6491) > at org.apache.hadoop.hbase.regionserver.HRegion.get(HRegion.java:7458) > at org.apache.hadoop.hbase.regionserver.HRegion.get(HRegion.java:7436) > at org.apache.hadoop.hbase.regionserver.HRegion.get(HRegion.java:8123) > at > org.apache.hadoop.hbase.regionserver.HRegion.reckonDeltasByStore(HRegion.java:8003) > at > org.apache.hadoop.hbase.regionserver.HRegion.reckonDeltas(HRegion.java:7958) > at > org.apache.hadoop.hbase.regionserver.HRegion.doDelta(HRegion.java:7805) > at > org.apache.hadoop.hbase.regionserver.HRegion.increment(HRegion.java:7767) > at > org.apache.hadoop.hbase.regionserver.RSRpcServices.increment(RSRpcServices.java:734) > at > org.apache.hadoop.hbase.regionserver.RSRpcServices.doNonAtomicRegionMutation(RSRpcServices.java:877) > at > org.apache.hadoop.hbase.regionserver.RSRpcServices.multi(RSRpcServices.java:2705) > at > org.apache.hadoop.hbase.shaded.protobuf.generated.ClientProtos$ClientService$2.callBlockingMethod(ClientProtos.java:42290) > at