Hi James,

On Sun, May 7, 2017 at 8:36 AM, James Cheng <wushuja...@gmail.com> wrote:

> Makes sense, and I don't have any concerns about it. Actually, I'm excited
> for the capability. That means you can completely tell how a topic is
> configured, without needing to have any knowledge of how the broker is
> configured.
>

That's the goal indeed.

Unrelated to this KIP, but important to keep in mind is that all brokers
must have the same topic configs for things to work in a sane manner. That
is a peculiarity of how topic configs work in Kafka: the fallback to broker
topic configs is done during load, not during store. This makes it possible
to update all topic config defaults by updating the config in every broker
following by a rolling restart (or by upgrading to a new version of Kafka
where broker topic config defaults has changed), but it can also be a
source of weird behaviour if the broker topic configs are not consistent.
There are a few ways this could be improved, but that's a subject for
another KIP. :)

You said that "if we fallback to the broker config (whether it's a default
> or not), is_default will be true.". I assume that if I were to ListConfig
> on the *broker*, then if a config is the kafka default, then is_default
> will be true. And if the operator specifically set an override for the
> broker config, then is_default will be false?
>

That's right.

If that is all correct, then you can also completely tell how a broker is
> configured, without needing to look at its config file. Which is pretty
> convenient.
>

Yeah, that is indeed the goal as well. :)

I'll update the KIP to clarify these important points.

Thanks,
Ismael

Reply via email to