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

Scott Carey commented on AVRO-820:
----------------------------------

+1  This is good improvement over my patch.

I think a RuntimeException subtype is appropriate, since this is only thrown 
when writing to the buffer and not underlying I/O.  As a user, I'd like to see 
IOException when something is wrong with the file or other underlying I/O and 
not recoverable internal writer state.

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

Reply via email to