avro-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Doug Cutting (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (AVRO-820) Java: Exceptions thrown while encoding a record while writing an Avro Data file will produce a corrupt file.
Date Tue, 17 May 2011 12:32:47 GMT

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

Doug Cutting commented on AVRO-820:
-----------------------------------

Here's an alternative: if we think there's an important use for this, then we might add a
new exception, EncoderException that's thrown, wrapping the original exception.  That way
an application can handle this distinctly from arbitrary exceptions where continuing to append
items might not be reasonable.  But I would prefer to hear a use case before we complicate
things in this way.

> Java: Exceptions thrown while encoding a record while writing an Avro Data file will
produce a corrupt file. 
> -------------------------------------------------------------------------------------------------------------
>
>                 Key: AVRO-820
>                 URL: https://issues.apache.org/jira/browse/AVRO-820
>             Project: Avro
>          Issue Type: Bug
>          Components: java
>    Affects Versions: 1.4.1, 1.5.0, 1.5.1
>            Reporter: Scott Carey
>            Assignee: Scott Carey
>            Priority: Critical
>         Attachments: AVRO-820.patch
>
>
> If an exception is thrown while serializing a record in DataFileWriter<D>.append(D)
partial contents of that serialization will end up in the file.  This corrupts the block.
 
> DataFileWriter should ensure that the buffer is rewound to the state prior to the record
write in the case of an exception thrown during serialization to prevent creating a corrupt
file.

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

Mime
View raw message