Debezium 可能会产生无效的模式
Debezium might produce invalid schema
我遇到了 Avro 和 Schema Registry 的问题。 Debezium 创建架构和主题后,我从架构注册表下载了架构。我将它放入 .asvc 文件中,它看起来像这样:
{
"type": "record",
"name": "Envelope",
"namespace": "my.namespace",
"fields": [
{
"name": "before",
"type": [
"null",
{
"type": "record",
"name": "MyValue",
"fields": [
{
"name": "id",
"type": "int"
}
]
}
],
"default": null
},
{
"name": "after",
"type": [
"null",
"MyValue"
],
"default": null
}
]
}
我运行两个实验:
我试图将其放回架构注册表中,但出现此错误:MyValue 不正确。 当我删除 "after" 记录时,该架构似乎运行良好。
我使用 avro-maven-plugin 中的 'generate-sources' 来生成 Java 类。当我尝试使用上面的主题时,我看到了这个错误:
线程中出现异常 "b2-StreamThread-1" org.apache.kafka.streams.errors.StreamsException: 进程中捕获到异常。 [...]:注册 Avro 模式时出错:[...]
原因:io.confluent.kafka.schemaregistry.client.rest.exceptions.RestClientException:正在注册的架构与早期架构不兼容;错误代码:409
有人遇到过同样的问题吗?是 Debezium 产生了无效的模式还是模式注册表有错误?
MyValue is not correct.
那不是 Avro 类型。您必须将实际记录嵌入联合中,就像之前的值
换句话说,您无法在架构中交叉引用记录类型,AFAIK
When I try to consume the topic above, I see this error:
消费者不注册模式,所以不清楚你是如何得到这个错误的,除非可能使用 Kafka Streams,它会产生中间主题
我遇到了 Avro 和 Schema Registry 的问题。 Debezium 创建架构和主题后,我从架构注册表下载了架构。我将它放入 .asvc 文件中,它看起来像这样:
{
"type": "record",
"name": "Envelope",
"namespace": "my.namespace",
"fields": [
{
"name": "before",
"type": [
"null",
{
"type": "record",
"name": "MyValue",
"fields": [
{
"name": "id",
"type": "int"
}
]
}
],
"default": null
},
{
"name": "after",
"type": [
"null",
"MyValue"
],
"default": null
}
]
}
我运行两个实验:
我试图将其放回架构注册表中,但出现此错误:MyValue 不正确。 当我删除 "after" 记录时,该架构似乎运行良好。
我使用 avro-maven-plugin 中的 'generate-sources' 来生成 Java 类。当我尝试使用上面的主题时,我看到了这个错误:
线程中出现异常 "b2-StreamThread-1" org.apache.kafka.streams.errors.StreamsException: 进程中捕获到异常。 [...]:注册 Avro 模式时出错:[...]
原因:io.confluent.kafka.schemaregistry.client.rest.exceptions.RestClientException:正在注册的架构与早期架构不兼容;错误代码:409
有人遇到过同样的问题吗?是 Debezium 产生了无效的模式还是模式注册表有错误?
MyValue is not correct.
那不是 Avro 类型。您必须将实际记录嵌入联合中,就像之前的值
换句话说,您无法在架构中交叉引用记录类型,AFAIK
When I try to consume the topic above, I see this error:
消费者不注册模式,所以不清楚你是如何得到这个错误的,除非可能使用 Kafka Streams,它会产生中间主题