[
https://issues.apache.org/jira/browse/AVRO-2275?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16704269#comment-16704269
]
ASF GitHub Bot commented on AVRO-2275:
--------------------------------------
rstata commented on issue #395: AVRO-2275 Refactor schema-resolution code from
grammar-generation
URL: https://github.com/apache/avro/pull/395#issuecomment-443090279
I just checked in a few changes: some cosmetic name-changes, plus a few API
changes that will make it easier to utilize `Resolver.Action` trees. Also,
reused `Schema.SeenPair` rather than reimplement it in `Resolver`.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
> Refactor schema-resolution code from grammar-generation
> -------------------------------------------------------
>
> Key: AVRO-2275
> URL: https://issues.apache.org/jira/browse/AVRO-2275
> Project: Apache Avro
> Issue Type: Improvement
> Components: java
> Reporter: Raymie Stata
> Assignee: Raymie Stata
> Priority: Major
>
> In my own work to extend AVRO-2090, and also in AVRO-2247, an alternative
> approach optimizing decoders, we were forced to re-implement Schema
> resolution logic because it's currently embedded deeply in
> ResolvingGrammarGenerator. However, in the past the Avro community found it
> hard to maintain multiple implementations of the schema resolution code, as
> it is tedious and error-prone code.
> In this JIRA we've refactored the resolution code into a new class called
> Resolver, and have rewritten ResolvingGrammarGenerator to be a client of this
> class. This rewrite passes the full regression suite, including bug-for-bug
> compatibility with a few questionable resolutions rules, such as the "soft
> matching" rule for record in unions.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)