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

Doug Cutting commented on AVRO-1146:
------------------------------------

I'd prefer we address this as follows:
 - Remove references to java.lang.Number, since Avro cannot correctly handle 
all subclasses.
 - Add a mechanism to declare that an arbitrary class is Stringable.
 - Use that mechanism to declare BigDecimal, BigInteger and other concrete 
Number subclasses.

I'll work on a patch that does this.
                
> Can't use ReflectData to get schema when the type has a BigDecimal or 
> BigInteger field
> --------------------------------------------------------------------------------------
>
>                 Key: AVRO-1146
>                 URL: https://issues.apache.org/jira/browse/AVRO-1146
>             Project: Avro
>          Issue Type: Bug
>          Components: java
>    Affects Versions: 1.7.0
>            Reporter: Alexandre Normand
>              Labels: newbie
>         Attachments: AVRO-1146.patch, TestReflectDataWithBigDecimal.java
>
>
> I'm using avro Reflection API for a specific use case and I have a bug where 
> if the object I'm trying to get the Schema for has a field of type 
> BigDecimal. Because BigDecimal extends java.lang.Number, we try to create a 
> primitive schema for it but fail doing so with the following error:
> *{{org.apache.avro.AvroRuntimeException: Not a Specific class: class 
> java.math.BigDecimal}}*
> I'm attaching a unit test that shows the problem with a basic type that has a 
> single BigDecimal field.
> This basically also applied to all subclasses of java.lang.Number that are 
> not primitives.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to