[
https://issues.apache.org/jira/browse/MRUNIT-197?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14247352#comment-14247352
]
Hudson commented on MRUNIT-197:
-------------------------------
FAILURE: Integrated in mrunit-trunk #1125 (See
[https://builds.apache.org/job/mrunit-trunk/1125/])
MRUNIT-197 - Problems using Avro with MRUnit (Nicolas Dalsass via Brock)
(brock: rev daab87917264a1c4092aa960cd86abe90593694e)
* src/main/java/org/apache/hadoop/mrunit/internal/io/Serialization.java
> Problems using Avro with MRUnit
> -------------------------------
>
> Key: MRUNIT-197
> URL: https://issues.apache.org/jira/browse/MRUNIT-197
> Project: MRUnit
> Issue Type: Bug
> Affects Versions: 1.0.0
> Reporter: Matthew Hayes
> Assignee: Nicolas Dalsass
> Fix For: 1.2.0
>
> Attachments: MemberEventCountUnitTest.java,
> fix_avro_serialization.patch
>
>
> I'm not able to use MRUnit with Avro in a particular use case. See the
> exception below. I've attached a sample test that demonstrates the problem.
> When the input is just a plain integer it works fine. However if the input
> is a record that contains an integer it doesn't work. I stepped through the
> code with a debugger to try understanding what is going on. In the
> Serialization class's copy method, the serializer it gets on this line is
> wrong:
> serializer = (Serializer<Object>) serializationFactory
> .getSerializer(clazz);
> When I look at the schema within this object is is "int" instead of the
> record's schema.
> {noformat}
> java.lang.ClassCastException: org.apache.avro.generic.GenericData$Record
> cannot be cast to java.lang.Number
> at
> org.apache.avro.generic.GenericDatumWriter.write(GenericDatumWriter.java:78)
> at
> org.apache.avro.reflect.ReflectDatumWriter.write(ReflectDatumWriter.java:104)
> at
> org.apache.avro.generic.GenericDatumWriter.write(GenericDatumWriter.java:58)
> at
> org.apache.avro.hadoop.io.AvroSerializer.serialize(AvroSerializer.java:104)
> at
> org.apache.avro.hadoop.io.AvroSerializer.serialize(AvroSerializer.java:46)
> at
> org.apache.hadoop.mrunit.internal.io.Serialization.copy(Serialization.java:74)
> at
> org.apache.hadoop.mrunit.internal.io.Serialization.copy(Serialization.java:91)
> at
> org.apache.hadoop.mrunit.internal.io.Serialization.copyWithConf(Serialization.java:104)
> at org.apache.hadoop.mrunit.TestDriver.copy(TestDriver.java:608)
> at org.apache.hadoop.mrunit.TestDriver.copyPair(TestDriver.java:612)
> at
> org.apache.hadoop.mrunit.MapDriverBase.addInput(MapDriverBase.java:118)
> at
> org.apache.hadoop.mrunit.MapDriverBase.withInput(MapDriverBase.java:207)
> {noformat}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)