You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Matteo Bertozzi (JIRA)" <ji...@apache.org> on 2015/09/16 19:20:46 UTC

[jira] [Updated] (HBASE-14128) Fix inability to run Multiple MR over the same Snapshot

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

Matteo Bertozzi updated HBASE-14128:
------------------------------------
    Attachment: HBASE-14128-v0.patch

This was much harder than I thought...
Attached a v0 which should solve the htd problem.
but the code can (and should) be cleaned up more.
TableSnapshotScanner was the easiest one to cleanup, I removed the double snapshot manifest read and the use of the wrong HRI (the one from snapshot instead of restore).
The SnapshotFormatImpl still have the double manifest reading.. but I fixed in a hacky way the wrong HRI use. The problem here is that RestoreHelper is called in setInput() and I don't see an easy way to pass the list of HRI that we have there to the Split method..

> Fix inability to run Multiple MR over the same Snapshot
> -------------------------------------------------------
>
>                 Key: HBASE-14128
>                 URL: https://issues.apache.org/jira/browse/HBASE-14128
>             Project: HBase
>          Issue Type: Bug
>          Components: mapreduce, snapshots
>            Reporter: Matteo Bertozzi
>            Assignee: santosh kumar
>            Priority: Minor
>              Labels: beginner, noob
>         Attachments: HBASE-14128-v0.patch
>
>
> from the list, running multiple MR over the same snapshot does not work
> {code}
> public static void copySnapshotForScanner(Configuration conf, FileSystem ..
>     RestoreSnapshotHelper helper = new RestoreSnapshotHelper(conf, fs,
>       manifest, manifest.getTableDescriptor(), restoreDir, monitor, status);
> {code}
> the problem is that manifest.getTableDescriptor() will try to clone the snapshot with the same target name. ending up in "file already exist" exceptions.
> we just need to clone that descriptor and generate a new target table name



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