Sean Policarpio created AVRO-2212: ------------------------------------- Summary: GenericData.deepCopyRaw not working with java.lang.BigDecimal Key: AVRO-2212 URL: https://issues.apache.org/jira/browse/AVRO-2212 Project: Avro Issue Type: Bug Affects Versions: 1.8.2 Reporter: Sean Policarpio Attachments: SomethingWithDec.java
With an AVDL of: {code:java} @namespace("com.foo") record SomethingWithDec { decimal(8,2) dec; } {code} and the Scala/Java code of: {code} object Foo extends App { import com.foo.SomethingWithDec val x = SomethingWithDec.newBuilder().setDec(new java.math.BigDecimal("1234")) val y = SomethingWithDec.newBuilder(x).build() } {code} I get the exception: {noformat} Exception in thread "main" java.lang.ClassCastException: java.math.BigDecimal cannot be cast to java.nio.ByteBuffer at org.apache.avro.generic.GenericData.deepCopyRaw(GenericData.java:1089) at org.apache.avro.generic.GenericData.deepCopy(GenericData.java:1065) at com.foo.SomethingWithDec$Builder.<init>(SomethingWithDec.java:167) at com.foo.SomethingWithDec$Builder.<init>(SomethingWithDec.java:150) at com.foo.SomethingWithDec.newBuilder(SomethingWithDec.java:135) {noformat} I have attached the generated Java class for {{SomethingWithDec.}} This seems related to AVRO-1895, but I believe that was meant to have been fixed in 1.8.2. -- This message was sent by Atlassian JIRA (v7.6.3#76005)