Documentation / Contracts

18

Schema Registry and Avro

Engineering evidence from the KafkaPay laboratories.

LAB-VERIFIEDLABKAFKA 4.3.1

Schema Registry and Avro

payment.created-value usa FULL_TRANSITIVE no Schema Registry 8.3.1 (localhost:8082). V1 foi registado como ID 1/version 1. V2 adicionou merchantId nullable com default null, foi aceite como version 2 e funcionou nas duas direções: consumer V2 leu V1 e consumer V1 ignorou o campo novo.

Alterar currency de string para int foi rejeitado com HTTP 409, error_code=40901, TYPE_MISMATCH. Compatibilidade estrutural não garante compatibilidade semântica: não se deve mudar o significado de um campo só porque o Registry aceita a forma.