+1 Additionally, if a consumer is already using schema ID 1: `Int32`,
consuming the M3(id:1 `String`) message will get an error, right?

Thanks,
Baodi Shi

Yubiao Feng <yubiao.f...@streamnative.io.invalid> 于2024年10月9日周三 11:29写道:
>
> Hi all
>
> Background: When the schemas of a topic are lost, all of the messages in
> the topic can not be consumed successfully, and producers can not publish
> messages anymore. This mechanism alerts users to try to recover their
> schemas or recreate their topics.
>
> https://github.com/apache/pulsar/pull/23395 added a patch: producers will
> rebuild schemas if the original schemas were lost, which will mix the old
> schema and new schema as the same schema ID. For example:
> - send M1 with schema `Int32`, get schema id: `1`
> - send M2 with schema `String`, get schema id: `2`
> - schemas are lost
> - send M3 with schema `String`, get schema id `1`
>
> The messages `M1` and `M3` use different schemas, but have the same schema
> id, but users assume all things are fine, which is dangerous. So I want to
> revert this PR.
>
> Thanks
> Yubiao Feng

Reply via email to