删除旧模式后无法在 Kafka 中添加新模式

Can't add a new schema in Kafka after deleting the old one

我也在尝试为键使用适当的架构。默认情况下,它创建为:

{"subject":"AVROTEST-key","version":1,"id":60,"schema":"\"string\""}

但我想要它:

{"subject":"AVROTEST-key","version":1,"id":60,"schema": "{\"type\":\"record\",\"name\":\"AVROTEST\",\"fields\":[{\"name\":\"key\",\"type\":\"long\"}]}"}

因为兼容性问题,我试过彻底删除,重新添加。我使用

删除了它
curl -X DELETE http://XXXXXX.XXXXXX:1234/subjects/AVROTEST-key/versions/1

没有其他版本,删除后尝试GET时出现404错误,说明删除成功。但是当我尝试注册一个新模式时,我得到这个错误:

"error_code":409,"message":"Schema being registered is incompatible with an earlier schema"

没有模式,怎么会和早期的模式不兼容呢?我错过了什么?

这是我注册新架构的方式:

curl -X POST -H "Content-Type: application/vnd.schemaregistry.v1+json" --data '{"schema": "{\"type\":\"record\",\"name\":\"AVROTEST\",\"fields\":[{\"name\":XXXXXX.XXXXXXXX:1234/subjects/AVROTEST-key/versions

看起来还有另一个我不知道的架构版本。实际上是一个有趣的错误,我应该删除所有版本,而不是 [1]。所以输入命令

curl -X DELETE http://XXXXXX.XXXXXX:1234/subjects/AVROTEST-key/versions/

解决了我的问题。所有以前的模式都被删除。但请注意,新架构不会注册为版本 [1]。它将增加最新的模式ID。