You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@avro.apache.org by "Anders Sundelin (JIRA)" <ji...@apache.org> on 2017/09/10 20:00:00 UTC

[jira] [Created] (AVRO-2075) Allow SchemaCompatibility to report possibly lossy conversions

Anders Sundelin created AVRO-2075:
-------------------------------------

             Summary: Allow SchemaCompatibility to report possibly lossy conversions
                 Key: AVRO-2075
                 URL: https://issues.apache.org/jira/browse/AVRO-2075
             Project: Avro
          Issue Type: Improvement
    Affects Versions: 1.8.2, 1.7.7
         Environment: Java
            Reporter: Anders Sundelin
            Priority: Minor


It is stated in the Avro spec that int and long values are promotable to floats and doubles.
However, numeric promotions to floats are lossy (losing precision), as is long promotion to double.
It is suggested that the SchemaCompatibility class is updated to be able to flag conversions that have the possibility to be lossy as errors. The attached patch does just that, by adding a new boolean flag (allowDataLoss), preserving backwards compatibility by defaulting this flag to true.
Testcases illustrating the problem has been added to the unit test class TestReadingWritingDataInEvolvedSchemas





--
This message was sent by Atlassian JIRA
(v6.4.14#64029)