*Motivation*

We need an upgrade/backward compatibility story for schema enforcement. 
Especially around:

- `Producers cannot connect without a schema to topics with a schema`

*Changes*

- provide a flag on brokers to enable schema validation (and disabled it by 
default). this allows a smooth upgrade on brokers,
  otherwise, it will break all non-java producers on topics with schema 
immediately when upgrade to the new version
- change the default bytes producer to use `AUTO_PRODUCE_BYTES`. this would 
introduce performance penalty for producers without
  schema producing messages to topics with schema, however that is probably 
rare. since the world beforce schema, topics don't
  have schema, so there is no validation happen; the world after schema, new 
clients are starting using the typed api where
  schema is already enforced. introducing `AUTO_PRODUCE_BYTES` also provides a 
better story for people to enable validation
  on broker side, since there is no really change will need if client already 
support AUTO_PRODUCE_BYTES




[ Full content available at: https://github.com/apache/pulsar/pull/2730 ]
This message was relayed via gitbox.apache.org for [email protected]

Reply via email to