Files
api-guidelines/asynchronous-api-guidelines/kafka-asynchronous-guidelines/f_schema_data_evolution/backward-compatibility.md
2024-05-10 10:27:20 +00:00

802 B

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