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

Lewis John McGibbney commented on GORA-361:
-------------------------------------------

hey [~hsaputra] can you please commit this? I've tested locally and verify it 
to work with master branch. Thanks if this is possible. BTW thank you 
[~gerhard.gossen] for the patch, this is a good catch.

> AvroUtils.deepClonePersistent needs to flush BinaryEncoder
> ----------------------------------------------------------
>
>                 Key: GORA-361
>                 URL: https://issues.apache.org/jira/browse/GORA-361
>             Project: Apache Gora
>          Issue Type: Bug
>          Components: gora-core
>    Affects Versions: 0.4
>            Reporter: Gerhard Gossen
>            Assignee: Gerhard Gossen
>         Attachments: GORA-361.patch
>
>
> Calling AvroUtils.deepClonePersistent on a smallish object (e.g. an unfetched 
> Nutch WebPage) results in the following exception:
> {code:java}
> java.lang.RuntimeException: Unable to deserialize avro object from byte 
> buffer - please report this issue to the Gora bugtracker or your 
> administrator.
>         at 
> org.apache.gora.util.AvroUtils.deepClonePersistent(AvroUtils.java:125)
> {code}
> The method clones its argument by writing it to a wrapped byte array and 
> deserializing it from there. However, the output is buffered in the 
> BinaryEncoder and doesn't appear in the OutputStream. Adding {{enc.flush()}} 
> after {{writer.write}} seems to fix the bug.
> The attached patch contains a test that demonstrates the bug.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to