Ewen Cheslack-Postava created KAFKA-4810:
--------------------------------------------
Summary: SchemaBuilder should be more lax about checking that
fields are unset if they are being set to the same value
Key: KAFKA-4810
URL: https://issues.apache.org/jira/browse/KAFKA-4810
Project: Kafka
Issue Type: Bug
Components: KafkaConnect
Affects Versions: 0.10.2.0
Reporter: Ewen Cheslack-Postava
Currently SchemaBuilder is strict when checking that certain fields have not
been set yet (e.g. version, name, doc). It just checks that the field is null.
This is intended to protect the user from buggy code that overwrites a field
with different values, but it's a bit too strict currently. In generic code for
converting schemas (e.g. Converters) you will sometimes initialize a builder
with these values (e.g. because you get a SchemaBuilder for a logical type,
which sets name & version), but then have generic code for setting name &
version from the source schema.
We saw this bug in practice with Confluent's AvroConverter, so it's likely it
could trip up others as well. You can work around the issue, but it would be
nice if exceptions were only thrown if you try to overwrite an existing value
with a different value.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)