Dear all,

PIP-43
https://github.com/apache/pulsar/wiki/PIP-43%3A-producer-send-message-with-different-schema

introduced AUTO_PRODUCE_BYTES schema which allows the producer
creates the schema while publishing messages. But there is a case that the
producer with AUTO_PRODUCE_BYTES schema connects to the topic but has
not published the message yet, so the topic does not have a schema.
If a consumer tries to connect to the topic, we will get an exception

https://github.com/apache/pulsar/blob/6704f12104219611164aa2bb5bbdfc929613f1bf/pulsar-broker/src/main/java/org/apache/pulsar/broker/service/schema/SchemaRegistryServiceImpl.java#L293

And due to active producers connected to the topic, so the consumer is not
able to upload schema.

I think we should allow the consumer to upload schema in this case,
the new message from the producer should meet compatibility requirements.
It looks like schema creation compatibility check, The ones created first
should
be considered first, we do not need to reject the current schema to be
created for
the schema that may be created from the producer with AUTO_PRODUCE_BYTES
schema

Thanks,
Penghui

Reply via email to