[ 
https://issues.apache.org/jira/browse/HBASE-22324?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16829423#comment-16829423
 ] 

HBase QA commented on HBASE-22324:
----------------------------------

| (/) *{color:green}+1 overall{color}* |
\\
\\
|| Vote || Subsystem || Runtime || Comment ||
| {color:blue}0{color} | {color:blue} reexec {color} | {color:blue}  0m 
26s{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:orange}-0{color} | {color:orange} test4tests {color} | {color:orange}  
0m  0s{color} | {color:orange} The patch doesn't appear to include any new or 
modified tests. Please justify why no new tests are needed for this patch. Also 
please list what manual steps were performed to verify this patch. {color} |
|| || || || {color:brown} branch-2.1 Compile Tests {color} ||
| {color:green}+1{color} | {color:green} mvninstall {color} | {color:green}  4m 
 5s{color} | {color:green} branch-2.1 passed {color} |
| {color:green}+1{color} | {color:green} compile {color} | {color:green}  0m 
49s{color} | {color:green} branch-2.1 passed {color} |
| {color:green}+1{color} | {color:green} checkstyle {color} | {color:green}  1m 
 8s{color} | {color:green} branch-2.1 passed {color} |
| {color:green}+1{color} | {color:green} shadedjars {color} | {color:green}  3m 
59s{color} | {color:green} branch has no errors when building our shaded 
downstream artifacts. {color} |
| {color:green}+1{color} | {color:green} findbugs {color} | {color:green}  2m  
8s{color} | {color:green} branch-2.1 passed {color} |
| {color:green}+1{color} | {color:green} javadoc {color} | {color:green}  0m 
30s{color} | {color:green} branch-2.1 passed {color} |
|| || || || {color:brown} Patch Compile Tests {color} ||
| {color:green}+1{color} | {color:green} mvninstall {color} | {color:green}  3m 
49s{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} compile {color} | {color:green}  0m 
48s{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} javac {color} | {color:green}  0m 
48s{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} checkstyle {color} | {color:green}  1m 
 7s{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}  3m 
56s{color} | {color:green} patch has no errors when building our shaded 
downstream artifacts. {color} |
| {color:green}+1{color} | {color:green} hadoopcheck {color} | {color:green}  
7m 59s{color} | {color:green} Patch does not cause any errors with Hadoop 2.7.4 
or 3.0.0. {color} |
| {color:green}+1{color} | {color:green} findbugs {color} | {color:green}  2m 
12s{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} javadoc {color} | {color:green}  0m 
30s{color} | {color:green} the patch passed {color} |
|| || || || {color:brown} Other Tests {color} ||
| {color:green}+1{color} | {color:green} unit {color} | {color:green}126m  
8s{color} | {color:green} hbase-server in the patch passed. {color} |
| {color:green}+1{color} | {color:green} asflicense {color} | {color:green}  0m 
23s{color} | {color:green} The patch does not generate ASF License warnings. 
{color} |
| {color:black}{color} | {color:black} {color} | {color:black}160m 35s{color} | 
{color:black} {color} |
\\
\\
|| Subsystem || Report/Notes ||
| Docker | Client=17.05.0-ce Server=17.05.0-ce base: 
https://builds.apache.org/job/PreCommit-HBASE-Build/213/artifact/patchprocess/Dockerfile
 |
| JIRA Issue | HBASE-22324 |
| JIRA Patch URL | 
https://issues.apache.org/jira/secure/attachment/12967378/HBASE-22324.branch-2.1.001.patch
 |
| Optional Tests |  dupname  asflicense  javac  javadoc  unit  findbugs  
shadedjars  hadoopcheck  hbaseanti  checkstyle  compile  |
| uname | Linux e45d1aa66192 4.4.0-138-generic #164-Ubuntu SMP Tue Oct 2 
17:16:02 UTC 2018 x86_64 GNU/Linux |
| Build tool | maven |
| Personality | dev-support/hbase-personality.sh |
| git revision | branch-2.1 / 11843b7010 |
| maven | version: Apache Maven 3.5.4 
(1edded0938998edf8bf061f1ceb3cfdeccf443fe; 2018-06-17T18:33:14Z) |
| Default Java | 1.8.0_181 |
| findbugs | v3.1.11 |
|  Test Results | 
https://builds.apache.org/job/PreCommit-HBASE-Build/213/testReport/ |
| Max. process+thread count | 5134 (vs. ulimit of 10000) |
| modules | C: hbase-server U: hbase-server |
| Console output | 
https://builds.apache.org/job/PreCommit-HBASE-Build/213/console |
| Powered by | Apache Yetus 0.9.0 http://yetus.apache.org |


This message was automatically generated.



>  loss a mass of data when the sequenceId of cells greater than Integer.Max, 
> because MemStoreMergerSegmentsIterator can not merge segments 
> ------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: HBASE-22324
>                 URL: https://issues.apache.org/jira/browse/HBASE-22324
>             Project: HBase
>          Issue Type: Bug
>    Affects Versions: 2.1.0, 2.2.0
>            Reporter: chenyang
>            Priority: Blocker
>              Labels: patch
>             Fix For: 2.1.0
>
>         Attachments: HBASE-22324.branch-2.1.001.patch, 
> HBASE-22324.branch-2.1.001.patch
>
>
> if your memstore type is CompactingMemStore,MemStoreMergerSegmentsIterator 
> can not merge memstore segments when the seqId of cells greater than 
> Integer.Max, as a result, lossing a mass of data. the reason is that 
> MemStoreMergerSegmentsIterator use Integer.Max as readPt when create Scanner, 
>  but the seqId of cell  may be greater than Integer.MAX_VALUE,  it`s type is 
> long.   code as below:
> {code:java}
> public MemStoreMergerSegmentsIterator(List<ImmutableSegment> segments, 
> CellComparator comparator,
>     int compactionKVMax) throws IOException {
>   super(compactionKVMax);
>   // create the list of scanners to traverse over all the data
>   // no dirty reads here as these are immutable segments
>   AbstractMemStore.addToScanners(segments, Integer.MAX_VALUE, scanners); 
> //bug, should use Long.MAX_VALUE
>   heap = new KeyValueHeap(scanners, comparator);
> }
> SegmentScanner.java code as below
> protected void updateCurrent() {
>   Cell startKV = current;
>   Cell next = null;
>   try {
>     while (iter.hasNext()) {
>       next = iter.next();
>       // here, if seqId>readPoint(Integer.MAX_VALUE), never read cell, as a 
> result, lossing lots of cells
>       if (next.getSequenceId() <= this.readPoint) {
>         current = next;
>         return;// skip irrelevant versions
>       }
>       if (stopSkippingKVsIfNextRow &&   // for backwardSeek() stay in the
>           startKV != null &&        // boundaries of a single row
>           segment.compareRows(next, startKV) > 0) {
>         current = null;
>         return;
>       }
>     } // end of while
>     current = null; // nothing found
>   } finally {
>     if (next != null) {
>       // in all cases, remember the last KV we iterated to, needed for 
> reseek()
>       last = next;
>     }
>   }
> }{code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to