hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Anoop Sam John (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-18128) compaction marker could be skipped
Date Mon, 05 Jun 2017 11:35:05 GMT

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

Anoop Sam John commented on HBASE-18128:

Agree to the point of replay with out considering the seqId (vs Last flushed seqId).  
I mean one WALEdit entry can have more than one cell in it.  So any chance of this kind of
a meta cell is clubbed together with some other non meta cells within one WALEdit.  Here by
the patch, we make it that none of the Cells in this WALEdit will be honoring the seqId then..
But I think there is no possibility of this clubbing.. Just asked so that u can have a look.
U clear now?

> compaction marker could be skipped 
> -----------------------------------
>                 Key: HBASE-18128
>                 URL: https://issues.apache.org/jira/browse/HBASE-18128
>             Project: HBase
>          Issue Type: Improvement
>          Components: Compaction, regionserver
>            Reporter: Jingyun Tian
>            Assignee: Jingyun Tian
>         Attachments: HBASE-18128.patch
> The sequence for a compaction are as follows:
> 1. Compaction writes new files under region/.tmp directory (compaction output)
> 2. Compaction atomically moves the temporary file under region directory
> 3. Compaction appends a WAL edit containing the compaction input and output files. Forces
sync on WAL.
> 4. Compaction deletes the input files from the region directory.
> But if a flush happened between 3 and 4, then the regionserver crushed. The compaction
marker will be skipped when splitting log because the sequence id of compaction marker is
smaller than lastFlushedSequenceId.
> {code}
>         if (lastFlushedSequenceId >= entry.getKey().getLogSeqNum()) {
>           editsSkipped++;
>           continue;
>         }
> {code}

This message was sent by Atlassian JIRA

View raw message