[
https://issues.apache.org/jira/browse/HBASE-2231?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12864668#action_12864668
]
Todd Lipcon commented on HBASE-2231:
------------------------------------
My plan is this:
- HLog already has a special METAFAMILY/METAROW concept that can be used to put
out-of-band info in the editlog.
- Currently we write a "COMPLETE_CACHE_FLUSH" entry in there for cache flushes
- Do a similar thing, but with COMPACTION_FINISHED. In this case we'll also
have a qualifier COMPACTION_DATA which will contain (a) the compacted file path
in the compaction dir, and (b) the files that fed into the compaction
- During HLog replay, if we see one of these entries, we try to "finish" the
compaction by moving the compacted file into place and removing the source
files (these are idempotent operations, so it's fine if the RS already did it)
> Compaction events should be written to HLog
> -------------------------------------------
>
> Key: HBASE-2231
> URL: https://issues.apache.org/jira/browse/HBASE-2231
> Project: Hadoop HBase
> Issue Type: Improvement
> Components: regionserver
> Reporter: Todd Lipcon
> Assignee: Todd Lipcon
> Fix For: 0.20.5
>
> Attachments: hbase-2231-testcase.txt
>
>
> The sequence for a compaction should look like this:
> # Compact region to "new" files
> # Write a "Compacted Region" entry to the HLog
> # Delete "old" files
> This deals with a case where the RS has paused between step 1 and 2 and the
> regions have since been reassigned.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.