Schema Evolution - Middle¶
Backward compatibility lets new readers consume old data; forward lets old readers consume new data; full requires both.
flowchart TD
Change --> Check{Compatibility mode}
Check --> Backward
Check --> Forward
Check --> Full
Avro commonly encodes a schema ID plus binary payload. Add optional fields with defaults, deploy tolerant readers before writers, and enforce compatibility in CI. Transitive mode checks against every prior version, which matters for replay. Test yourself¶
- Which mode supports new readers of old events?
- Why deploy readers first?
- What does transitive checking add? Continue to
senior.md.