avro-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Adrian McCague (JIRA)" <j...@apache.org>
Subject [jira] [Created] (AVRO-2028) Specific Data, newBuilder(existingInstance) fails for BigDecimal
Date Mon, 24 Apr 2017 19:10:04 GMT
Adrian McCague created AVRO-2028:
------------------------------------

             Summary: Specific Data, newBuilder(existingInstance) fails for BigDecimal
                 Key: AVRO-2028
                 URL: https://issues.apache.org/jira/browse/AVRO-2028
             Project: Avro
          Issue Type: Bug
    Affects Versions: 1.8.2
            Reporter: Adrian McCague


Using 1.8.2-rc3

When attempting to use:
{{MyType.newBuilder(existingType)}}

With a field of type {{Union}}:
{code}
["null",{"type":"bytes","logicalType":"decimal","precision":20,"scale":8}]
{code}

I get the following exception:

{code}
org.apache.avro.UnresolvedUnionException: Not in union ["null",{"type":"bytes","logicalType":"decimal","precision":20,"scale":8}]:
12000.00000000

	at org.apache.avro.generic.GenericData.resolveUnion(GenericData.java:740)
	at org.apache.avro.generic.GenericData.deepCopyRaw(GenericData.java:1146)
	at org.apache.avro.generic.GenericData.deepCopy(GenericData.java:1062)
	at MyType$Builder.<init>
{code}

I suspected it may be related but also noticed in the generated Specific Data class the following:
{code}
private static final org.apache.avro.Conversion<?>[] conversions =
      new org.apache.avro.Conversion<?>[] {
      null,
      TIMESTAMP_CONVERSION,
      null,
      null, // Should be DECIMAL_CONVERSION
      null,
      null,
      null,
      null,
      null
  };
{code}
ie, the conversion was missing.
Adding this by hand however did not resolve the issue. I will add this as another issue.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Mime
View raw message