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

Todd Lipcon commented on HDFS-1580:
-----------------------------------

Hi Ivan,

Trying to integrate this with my HDFS-1073 work, running into some things that 
feel wrong about the JournalManager API...
It seems strange that every edit makes a call to getOutputStream(txid) rather 
than simply calling it once at each roll point.

I think it makes the most sense to introduce the idea of a "log segment" - in 
the file case it corresponds to a single edit file. In the BK case it might be 
a ledger. In other cases it might be a no-op.

The state machine for logging then becomes something like:

- open
- beginLogSegment(txid 1): returns an EditLogOutputStream
- write(...) 5 times
- roll:
-- endLogSegment(1, 6)
-- startLogSegment(7)
- write more data, etc

Does this seem to make sense to you?

> Add interface for generic Write Ahead Logging mechanisms
> --------------------------------------------------------
>
>                 Key: HDFS-1580
>                 URL: https://issues.apache.org/jira/browse/HDFS-1580
>             Project: Hadoop HDFS
>          Issue Type: Improvement
>            Reporter: Ivan Kelly
>         Attachments: HDFS-1580+1521.diff, HDFS-1580.diff, 
> generic_wal_iface.pdf, generic_wal_iface.pdf, generic_wal_iface.txt
>
>


--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to