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

Jean-Daniel Cryans commented on HBASE-1897:
-------------------------------------------

HBASE-1756 is about refactoring HLog and I have some stuff done already.

> WAL is spread all over code-base and presumption is its SequenceFile; 
> encapsulate inside a wal subpackage
> ---------------------------------------------------------------------------------------------------------
>
>                 Key: HBASE-1897
>                 URL: https://issues.apache.org/jira/browse/HBASE-1897
>             Project: Hadoop HBase
>          Issue Type: Improvement
>            Reporter: stack
>
> Presumption is that WAL is a sequencefile.  I just spent some time looking 
> again at my old buddy SF and its kinda heavy-duty for our needs.  Do we need 
> the sync bytes it writes into the stream every time you call a sync?  Maybe 
> it'd help recovering logs of edits?  We don't need the compression by record 
> or block, metadata info, etc.  Its also currently unsuited because its sync 
> actually doesn't do a sync on the backing stream:
> {code}
>     /** create a sync point */
>     public void sync() throws IOException {
>       if (sync != null && lastSyncPos != out.getPos()) {
>         out.writeInt(SYNC_ESCAPE);                // mark the start of the 
> sync
>         out.write(sync);                          // write sync
>         lastSyncPos = out.getPos();               // update lastSyncPos
>       }
>     }
> {code}
> We should move all of our HLog stuff into a wal package and rename the 
> classes as WAL, WALEdit, etc.  Splitting code and replay code should 
> reference a WAL.Reader rather than a SequenceFile.Reader, etc.

-- 
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