Backward Compatibility

There are two variants here:

  • BACKWARD - Consumers using a new version (X) of a schema can read data produced by the previous version (X - 1)

  • BACKWARD_TRANSITIVE - Consumers using a new version (X) of a schema can read data produced by any previous version (X - 1, X - 2, ....)

The operations that preserve backward compatibility are:

  • Deleting fields

    • Consumers with the newer version will just ignore the non-existing fields

  • Adding optional fields (with default values)

    • Consumers will set the default value for the missing fields in their schema version

Last updated