You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hbase.apache.org by "Andrew Purtell (JIRA)" <ji...@apache.org> on 2015/04/22 02:44:59 UTC

[jira] [Resolved] (HBASE-4662) Replay the required hlog edits to make the backup preserve row atomicity.

     [ https://issues.apache.org/jira/browse/HBASE-4662?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Andrew Purtell resolved HBASE-4662.
-----------------------------------
    Resolution: Incomplete
      Assignee:     (was: Karthik Ranganathan)

> Replay the required hlog edits to make the backup preserve row atomicity.
> -------------------------------------------------------------------------
>
>                 Key: HBASE-4662
>                 URL: https://issues.apache.org/jira/browse/HBASE-4662
>             Project: HBase
>          Issue Type: Sub-task
>          Components: documentation, regionserver
>            Reporter: Karthik Ranganathan
>
> The algorithm is as follows:
> A. For HFiles:
> 1. Need to track t1,t2 for each backup (start and end times of the backup)
> 2. For point in time restore to time t, pick a HFile snapshot which has t2 < t
> 3. Copy HFile snapshot to a temp location - HTABLE_RESTORE_t
> B. For HLogs:
> for each regionserver do
>   for .logs and .oldlogs do
> 1. log file is hlog.TIME
> 2. if (t > TIME and hlog.TIME is open for write) fail restore for t
> 3. Pick the latest HLog whose create time is < t1
> 4. Pick all HLogs whose create time is > t1 and <= t2
> 5. Copy hlogs to the right structures inside HTABLE_RESTORE_t
> C. Split logs
> 1. Enhance HLog.splitLog to take timestamp t
> 2. Enhance distributed log split tool to pass HTABLE_RESTORE_t, so that log split is picked up and put in the right location
> 3. Enhance distributed log split tool to pass t so that all edits till t are included and others ignored
> D. Import the directory into the running HBase with META entries, etc (this already exists)



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