Java 修改.avsc时,auto.register.schemas是否应该在schema注册表中创建新版本?
我注意到一件奇怪的事情,它试图遵循关于Kafka模式注册表和简单生产者的教程。如果我更改Java 修改.avsc时,auto.register.schemas是否应该在schema注册表中创建新版本?,java,apache-kafka,confluent-schema-registry,Java,Apache Kafka,Confluent Schema Registry,我注意到一件奇怪的事情,它试图遵循关于Kafka模式注册表和简单生产者的教程。如果我更改.avsc文件,它不会在模式注册表中自动生成新模式。我采取了以下步骤: 启动本地模式注册表、Kafka和Zookeeper 创建带有2个字符串字段的.avsc文件 使用KafkaProducer创建Java producer-我正在使用avro maven插件从.avsc文件生成Java类 编译并运行producer—生成新的Java类并生成记录。此外,在模式注册表中会出现一个新条目 修改.avsc文件-在那
.avsc
文件,它不会在模式注册表中自动生成新模式。我采取了以下步骤:
.avsc
文件KafkaProducer
创建Java producer-我正在使用avro maven插件从.avsc
文件生成Java类.avsc
文件-在那里添加一个新字段auto.register.schemas
创建一个新的模式版本,但它没有。在schema registry中使用curl手动创建它之后,记录再次开始正确生成
我担心的是,没有例外,这使得人们很难理解为什么不生成记录。如果您仅使用一条(或几条)消息调用send方法,那么该方法不会立即发送给代理,您需要刷新生产者才能做到这一点。理想情况下,通过向JVM添加一个关闭挂钩
只有当记录被发送并序列化时,架构才需要注册您可以共享您的生产者代码吗?我发送了10条记录并刷新,它成功地刷新了,没有异常,但记录没有出现。因此,如果您从主题开始运行消费者,您什么也看不到?可能因为您没有SLF4J设置,所以没有记录异常?