Deleting a field without a default value in an Avro schema is which type of compatibility?

Study for the CCDAK Apache Kafka Test. Use flashcards and multiple choice questions with hints and explanations for each question. Prepare thoroughly for your exam!

Multiple Choice

Deleting a field without a default value in an Avro schema is which type of compatibility?

Explanation:
Backwards compatibility is at play here. When a field is removed from the schema and that field had no default value, the new schema no longer requires that data. Data written with the old schema still contains bytes for that field, but the newer reader simply doesn’t expect it and can ignore those bytes while decoding the rest of the record. In this sense, older data can be read by the newer schema without errors, which is what backward compatibility means. If you were thinking in the opposite direction (old readers reading data from a newer schema, or requiring the new field to exist), that would be forward or full compatibility.

Backwards compatibility is at play here. When a field is removed from the schema and that field had no default value, the new schema no longer requires that data. Data written with the old schema still contains bytes for that field, but the newer reader simply doesn’t expect it and can ignore those bytes while decoding the rest of the record. In this sense, older data can be read by the newer schema without errors, which is what backward compatibility means. If you were thinking in the opposite direction (old readers reading data from a newer schema, or requiring the new field to exist), that would be forward or full compatibility.

Subscribe

Get the latest from Passetra

You can unsubscribe at any time. Read our privacy policy