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

Doug Cutting commented on AVRO-1585:
------------------------------------

Default values don't need to map to unique Avro types, since their type is 
always implied by the field.  So having, e.g., java.lang.String represent both 
Avro strings and enum symbols and Maps represent both records and maps isn't a 
problem here.  (This is why we can use JSON for default values, since it 
doesn't distinguish these.)

We could add a new API for default values and keep the existing JsonValue-based 
API but deprecated.  Then we couldn't remove the Jackson dependency until we 
make the incompatible change of removing the existing API.  I don't think many 
applications directly manipulate default values, so mostly I expect this will 
affect frameworks that build on Avro.  Do we need a transitional release 
series, or should we just break things in 1.8?

> Remove Jackson classes from public Schema API
> ---------------------------------------------
>
>                 Key: AVRO-1585
>                 URL: https://issues.apache.org/jira/browse/AVRO-1585
>             Project: Avro
>          Issue Type: Sub-task
>          Components: java
>            Reporter: Sean Busbey
>            Assignee: Sean Busbey
>             Fix For: 1.8.0
>
>
> Remove the use of Jackson's classes from our public API. Namely, remove the 
> use of JsonNode for schema defaults. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to