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

Jay Booth updated HADOOP-6196:
------------------------------

    Attachment: sync-bug.patch

So, it turns out that SequenceFile.Writer generates its sync block and headers 
statically at classloader time, so if it generates the 'right' binary data, 
it'll evade this bug.  I can't reproduce the bug reliably without running the 
test multiple times in a row by hand, unless someone knows a way to re-execute 
static code in a running jvm.  It occurs about 2/3 of the time or so.  
Modifying SequenceFile to expose those values for writing by a test seems like 
overkill... should we just leave as is?  If the build runs frequently enough, 
it'll catch regressions eventually, right?  All the other ideas I have are 
hacky.

Issues with JUnit 4 and whitespace in the patch have been addressed.

> sync(0); next() breaks SequenceFile
> -----------------------------------
>
>                 Key: HADOOP-6196
>                 URL: https://issues.apache.org/jira/browse/HADOOP-6196
>             Project: Hadoop Common
>          Issue Type: Bug
>            Reporter: Jay Booth
>         Attachments: sync-bug.patch
>
>
> Currently, the end of the SequenceFile header is a sync block that isn't 
> prefaced with SYNC_ESCAPE.  This means that sync(0) followed by next() fails. 
>  Patch w/ test attached, bumps VERSION from 6 to 7.

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