Hi [~nkollar], I'd say that's a rule for decimal comparison, not evolution.
On Fri, 20 Jul 2018 at 13:10, Nandor Kollar (JIRA) <[email protected]> wrote: > > [ > https://issues.apache.org/jira/browse/AVRO-2164?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16550713#comment-16550713 > ] > > Nandor Kollar commented on AVRO-2164: > ------------------------------------- > > [~BigAndy] I wanted to refer to this in the Decimal section of the spec: > "For the purposes of schema resolution, two schemas that > are decimal logical types _match_ if their scales and precisions match." > This sounds like a rule for schema evolution, and scale and precision > should match (the current doesn't check for this). > > > Make Decimal a first class type. > > -------------------------------- > > > > Key: AVRO-2164 > > URL: https://issues.apache.org/jira/browse/AVRO-2164 > > Project: Avro > > Issue Type: Improvement > > Components: logical types > > Affects Versions: 1.8.2 > > Reporter: Andy Coates > > Priority: Major > > > > I'd be interested to hear the communities thoughts on making decimal a > first class type. > > The current logical type encodes a decimal into a _bytes_ or _fixed_. > This encoding does not include any information about the scale, i.e. this > encoding is lossy. > > There are open issues around the compatibility / evolvability of schemas > containing decimal logical types, (e.g. AVRO-2078 & AVRO-1721), that mean > reading data that was previously written with a different scale will result > in data corruption. > > If these issues were fixed, with suitable compatibility checks put in > place, this would then make it impossible to evolve an Avro schema where > the scale needs to be changed. This inability to evolve the scale is very > restrictive, and can result in high overhead for organizations that _need_ > to change the scale, i.e. they may potentially need to copy their entire > data set, deserializing with the old scale and re-serializing with the new. > > If _decimal_ were promoted to a first class type, this would allow the > scale to be captured in the serialized form, allow for schema evolution > support. > > > > -- > This message was sent by Atlassian JIRA > (v7.6.3#76005) >
