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

Konstantin Shvachko updated HADOOP-3905:
----------------------------------------

    Attachment: EditsLogStreams.patch

In the patch.

# I substantially simplified what used to be called {{EditLogOutputStream}} by 
using existing hadoop class
{{org.apache.hadoop.io.DataOutputBuffer}} instead of a pair of classes import 
{{DataOutputStream}} and
{{ByteArrayOutputStream}}
# {{EditLogOutputStream}} is now an abstract class, and 
{{EditLogFileOutputStream}} is its implementation
for storing edits in a file.
# Introduced {{EditLogInputStream}} and its implementation called 
{{EditLogFileInputStream}} for reading
edits from a file.
# The rest of the {{FSEditLog}} remained unchanged.

The idea here is that one should write implementations of 
{{EditLogOutputStream}} and {{EditLogInputStream}}
for a different type of persistent storage and the rest of the logic for the 
edits log should remain unchanged.
Since I don't have other implementations ready yet it is hard to predict what 
else should be changed or abstracted.
FSImage and FSEditLog heavily depend on the storage directory file names so may 
be that should be changed somehow in the future.

> Create a generic interface for edits log.
> -----------------------------------------
>
>                 Key: HADOOP-3905
>                 URL: https://issues.apache.org/jira/browse/HADOOP-3905
>             Project: Hadoop Core
>          Issue Type: Improvement
>          Components: dfs
>    Affects Versions: 0.19.0
>            Reporter: Konstantin Shvachko
>            Assignee: Konstantin Shvachko
>             Fix For: 0.19.0
>
>         Attachments: EditsLogStreams.patch
>
>
> Create a generic interface that would cover all edit log operations and be 
> useful for implementing journaling functionality on different storage sources.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to