Good time of day. I have a question regarding avro compatibility check.  
I'm checking it via schema-registry api, which as authors said here 
(https://github.com/confluentinc/schema-registry/issues/391 
<https://github.com/confluentinc/schema-registry/issues/391>) just calls Avro 
Validator. 
The problems is that those two schemas are considered compatible: 
Problem in words: adding fields to optional (sub-)record considered compatible.
Examples in IDL:
old schema : 
@namespace("test.idl.compatibility") 
protocol Updates { 
    record Sub { 
        string id; 
    } 
 
    record Value { 
        union {null, Sub} sub; 
    } 
} 
updated schema: 
 
@namespace("test.idl.compatibility") 
protocol Updates { 
    record Sub { 
        string id; 
+++     string y; 
   } 
 
    record Value { 
        union {null, Sub} sub; 
    } 
} 
 
which looks wrong to me, is this a bug in validator, or does this have any 
explanation. 

Reply via email to