hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Yu Li (JIRA)" <j...@apache.org>
Subject [jira] [Comment Edited] (HBASE-16931) Setting cell's seqId to zero in compaction flow might cause RS down.
Date Mon, 31 Oct 2016 10:24:00 GMT

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

Yu Li edited comment on HBASE-16931 at 10/31/16 10:23 AM:
----------------------------------------------------------

No problem, totally understand what it costs and how busy that will be to maintain some production
online cluster meanwhile, will wait for your feedback. :-)

And yes [~aoxiang] has added a UT case in his patch to reproduce the issue, please refer to
that for more details.


was (Author: carp84):
No problem, will wait for your feedback then. And yes [~aoxiang] has added a UT case in his
patch to reproduce the issue, please refer to that for more details :-)

> Setting cell's seqId to zero in compaction flow might cause RS down.
> --------------------------------------------------------------------
>
>                 Key: HBASE-16931
>                 URL: https://issues.apache.org/jira/browse/HBASE-16931
>             Project: HBase
>          Issue Type: Bug
>          Components: regionserver
>    Affects Versions: 2.0.0, 1.3.0
>            Reporter: binlijin
>            Assignee: binlijin
>            Priority: Critical
>             Fix For: 2.0.0, 1.3.0, 1.4.0, 1.2.4, 1.1.8
>
>         Attachments: HBASE-16931-master.patch, HBASE-16931.branch-1.patch, HBASE-16931.branch-1.v2.patch,
HBASE-16931_master_v2.patch, HBASE-16931_master_v3.patch, HBASE-16931_master_v4.patch, HBASE-16931_master_v5.patch
>
>
> Compactor#performCompaction
>       do {
>         hasMore = scanner.next(cells, scannerContext);
>         // output to writer:
>         for (Cell c : cells) {
>           if (cleanSeqId && c.getSequenceId() <= smallestReadPoint) {
>             CellUtil.setSequenceId(c, 0);
>           }
>           writer.append(c);
>         }
>         cells.clear();
>       } while (hasMore);
> scanner.next will choose at most "hbase.hstore.compaction.kv.max" kvs, the last cell
still reference by StoreScanner.prevCell, so if cleanSeqId is called when the scanner.next
call StoreScanner.checkScanOrder may throw exception and cause regionserver down.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message