[ https://issues.apache.org/jira/browse/AVRO-2148?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16372187#comment-16372187 ]
Ashok commented on AVRO-2148: ----------------------------- FYI, Hive avro deserializer is being used to read the Avro data files and that requires to be associated with a schema. Without being able to evolve the schema, parsing the data of multiple versions will get difficult and hence the need to allow the above > Avro: Schema compatibility/evolution - attribute size change > ------------------------------------------------------------ > > Key: AVRO-2148 > URL: https://issues.apache.org/jira/browse/AVRO-2148 > Project: Avro > Issue Type: Improvement > Components: java > Affects Versions: 1.8.2 > Reporter: Ashok > Priority: Critical > > Let's assume the schema changed from V1 to V2. Currently, we can't create a > merge of the two schema that makes it a compatible for both. Depending on > what size we keep in the reader schema (the merged schema), you can only read > avro files of schema V1 or V2, not both. If we keep the higher attribute > size value (64), it should allow the read of avro files with lower attribute > size value (16) > > * *V1 schema:* > { "name": "sid", "type": [ "null", > { "type": "fixed", "name": "SID", "namespace": "com.int.datatype", "doc": "", > "size": *64* } > ], "doc": "", "default": null, "businessLogic": "" } > > * *V2 schema:* > { "name": "sid", "type": [ "null", > { "type": "fixed", "name": "SID", "namespace": "com.int.datatype", "doc": "", > "size": *16* } > ], "doc": "", "default": null, "businessLogic": "" } -- This message was sent by Atlassian JIRA (v7.6.3#76005)