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

Jesse Yates commented on HBASE-6055:
------------------------------------

I was going through the offline snapshot code 
(https://github.com/jyates/hbase/tree/offline-snapshots) and noticed that 
apparently I wrote the following:
{code}
Path editsdir = 
HLog.getRegionDirRecoveredEditsDir(HRegion.getRegionDir(tdir,regionInfo.getEncodedName()));
WALReferenceTask op = new WALReferenceTask(snapshot, this.monitor, editsdir, 
conf, fs, "disabledTableSnapshot");
{code}

For referencing the current hfiles for a disabled table, this makes no sense. 
However, it got me thinking about dealing with recovered edits for a table. 
Even if a table is disabled, it may have recovered edits that haven't been 
applied to the table (a RS comes up, splits the logs, but then dies again 
before replaying the split log). 

If I'm reading the log-splitting code correctly, I think it archives the 
original HLog after splitting, but not before the edits are applied to the 
region. This would mean we also need to reference the recovered.edits directory 
under each region, if we keep the current implementation...right?

I was thinking that instead we can keep the hfiles around in the .logs 
directory until the recovered.edits files for that log file have been replayed. 
This way we can avoid another task for snapshotting (referencing all the 
recovered edits) and keep everything simple fairly simple. There would need to 
be some extra work to keep track of the source hlog - either an 'info' file for 
the source hlog that lists the written recovered.edits files or special naming 
of the recovered.edits files that point back to the source file. 

Thoughts?
                
> Snapshots in HBase 0.96
> -----------------------
>
>                 Key: HBASE-6055
>                 URL: https://issues.apache.org/jira/browse/HBASE-6055
>             Project: HBase
>          Issue Type: New Feature
>          Components: Client, master, regionserver, snapshots, Zookeeper
>            Reporter: Jesse Yates
>            Assignee: Jesse Yates
>             Fix For: hbase-6055, 0.96.0
>
>         Attachments: Snapshots in HBase.docx
>
>
> Continuation of HBASE-50 for the current trunk. Since the implementation has 
> drastically changed, opening as a new ticket.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to