Hi Justine,

We can rely on KIP-464 which allows to omit the partition count or
replication factor when creating a topic. In that case, the broker
defaults are used.

On Wed, Jul 31, 2019 at 4:55 PM Justine Olshan <jols...@confluent.io> wrote:
>
> Michael,
> That makes sense to me!
> To clarify, in the current state of the KIP, the producer does not rely on
> the broker to autocreate--if the broker's config is disabled, then the
> producer can autocreate on its own with a create topic request (the same
> type of request the admin client uses).
> However, if both configs are enabled, the broker will autocreate through a
> metadata request before the producer gets a chance.
> Of course, the way to avoid this, is to do as you suggested, and set the
> "allow_auto_topic_creation" field to false.
>
> I think the only thing we need to be careful with in this setup is without
> KIP 464, we can not use broker defaults for this topic. A user needs to
> specify the number of partition and replication factor in the config.
> An alternative to this is to have coded defaults for when these configs are
> unspecified, but it is not immediately apparent what these defaults should
> be.
>
> Thanks again for reading my KIP,
> Justine
>
> On Wed, Jul 31, 2019 at 4:19 AM Mickael Maison <mickael.mai...@gmail.com>
> wrote:
>
> > Hi Justine,
> >
> > Thanks for the response!
> > In my opinion, it would be better if the producer did not rely at all
> > on the broker auto create feature as this is what we're aiming to
> > deprecate. When requesting metadata we can set the
> > "allow_auto_topic_creation" field to false to avoid the broker auto
> > creation. Then if the topic is not existing, send a
> > CreateTopicRequest.
> >
> > What do you think?
> >
> > On Mon, Jul 29, 2019 at 6:34 PM Justine Olshan <jols...@confluent.io>
> > wrote:
> > >
> > > Currently the way it is implemented, the broker auto-creation
> > configuration
> > > takes precedence. The producer will not use the CreateTopics request.
> > > (Technically it can--but the topic will already be created through the
> > > broker, so it will never try to create the topic.)
> > > It is possible to change this however, and I'd be happy to discuss the
> > > benefits of this alternative.
> > >
> > > Thank you,
> > > Justine
> > >
> > > On Mon, Jul 29, 2019 at 10:26 AM Mickael Maison <
> > mickael.mai...@gmail.com>
> > > wrote:
> > >
> > > > Hi Justine,
> > > >
> > > > Thanks for the KIP!
> > > >
> > > > In case auto creation is enabled on both the client and server, will
> > > > the producer still use the AdminClient (CreateTopics request) to
> > > > create topics? and not rely on the broker auto create.
> > > > I'm guessing the answer is yes but can you make it explicit.
> > > >
> > > > Thank you
> > > >
> > > > On Wed, Jul 24, 2019 at 6:23 PM Justine Olshan <jols...@confluent.io>
> > > > wrote:
> > > > >
> > > > > Hi,
> > > > > Just a friendly reminder to take a look at this KIP if you have the
> > time.
> > > > >
> > > > > I was thinking about broker vs. client default precedence, and I
> > think it
> > > > > makes sense to keep the broker as the default used when both
> > client-side
> > > > > and broker-side defaults are configured. The idea is that there
> > would be
> > > > > pretty clear documentation, and that many systems with configurations
> > > > that
> > > > > the client could not change would likely have the auto-create default
> > > > off.
> > > > > (In cloud for example).
> > > > >
> > > > > It also seems like in most cases, the consumer config
> > > > > 'allow.auto.create.topics' was created to actually prevent the
> > creation
> > > > of
> > > > > topics, so the loss of creation functionality will not be a big
> > problem.
> > > > >
> > > > >  I'm happy to discuss any other compatibility problems or components
> > of
> > > > > this KIP.
> > > > >
> > > > > Thank you,
> > > > > Justine
> > > > >
> > > > > On Wed, Jul 17, 2019 at 9:11 AM Justine Olshan <jols...@confluent.io
> > >
> > > > wrote:
> > > > >
> > > > > > Hello all,
> > > > > >
> > > > > > I was looking at this KIP again, and there is a decision I made
> > that I
> > > > > > think is worth discussing.
> > > > > >
> > > > > > In the case where both the broker and producer's
> > > > > > 'auto.create.topics.enable' are set to true, we have to choose
> > either
> > > > the
> > > > > > broker configs or the producer configs for the replication
> > > > > > factor/partitions.
> > > > > >
> > > > > > Currently, the decision is to have the broker defaults take
> > precedence.
> > > > > > (It is easier to do this in the implementation.) It also makes some
> > > > sense
> > > > > > for this behavior to take precedence since this behavior already
> > > > occurs as
> > > > > > the default.
> > > > > >
> > > > > > However, I was wondering if it would be odd for those who can only
> > see
> > > > the
> > > > > > producer side to set configs for replication factor/partitions and
> > see
> > > > > > different results. Currently the documentation for the config
> > states
> > > > that
> > > > > > the config values are only used when the broker config is not
> > enabled,
> > > > but
> > > > > > this might not always be clear to the user.  Changing the code to
> > have
> > > > the
> > > > > > producer's configurations take precedence is possible, but I was
> > > > wondering
> > > > > > what everyone thought.
> > > > > >
> > > > > > Thank you,
> > > > > > Justine
> > > > > >
> > > > > > On Fri, Jul 12, 2019 at 2:49 PM Justine Olshan <
> > jols...@confluent.io>
> > > > > > wrote:
> > > > > >
> > > > > >> Just a quick update--
> > > > > >>
> > > > > >> It seems that enabling both the broker and producer configs works
> > > > fine,
> > > > > >> except that the broker configurations for partitions, replication
> > > > factor
> > > > > >> take precedence.
> > > > > >> I don't know if that is something we would want to change, but
> > I'll be
> > > > > >> updating the KIP for now to reflect this. Perhaps we would want to
> > > > add more
> > > > > >> to the documentation of the the producer configs to clarify.
> > > > > >>
> > > > > >> Thank you,
> > > > > >> Justine
> > > > > >>
> > > > > >> On Fri, Jul 12, 2019 at 9:28 AM Justine Olshan <
> > jols...@confluent.io>
> > > > > >> wrote:
> > > > > >>
> > > > > >>> Hi Colin,
> > > > > >>>
> > > > > >>> Thanks for looking at the KIP. I can definitely add to the title
> > to
> > > > make
> > > > > >>> it more clear.
> > > > > >>>
> > > > > >>> It makes sense that both configurations could be turned on since
> > > > there
> > > > > >>> are many cases where the user can not control the server-side
> > > > > >>> configurations. I was a little concerned about how both
> > interacting
> > > > would
> > > > > >>> work out -- if there would be to many requests for new topics,
> > for
> > > > example.
> > > > > >>> But it since it does make sense to allow both configurations
> > > > enabled, I
> > > > > >>> will test out some scenarios and I'll change the KIP to support
> > this.
> > > > > >>>
> > > > > >>> I also agree with documentation about distinguishing the
> > > > differences. I
> > > > > >>> was having some trouble with the wording but I like the phrases
> > > > > >>> "server-side" and "client-side." That's a good distinction I can
> > use
> > > > when
> > > > > >>> describing.
> > > > > >>>
> > > > > >>> I'll try to update the KIP soon keeping everyone's input in mind.
> > > > > >>>
> > > > > >>> Thanks,
> > > > > >>> Justine
> > > > > >>>
> > > > > >>> On Thu, Jul 11, 2019 at 5:39 PM Colin McCabe <cmcc...@apache.org
> > >
> > > > wrote:
> > > > > >>>
> > > > > >>>> Hi Justine,
> > > > > >>>>
> > > > > >>>> Thanks for the KIP.  This seems like a good step towards
> > removing
> > > > > >>>> server-side topic auto-creation.
> > > > > >>>>
> > > > > >>>> We should add included "client-side" to the title of the KIP
> > > > somewhere,
> > > > > >>>> to make it clear that we're talking about client-side auto
> > creation.
> > > > > >>>>
> > > > > >>>> The KIP says:
> > > > > >>>> > In order to automatically create topics with the producer, the
> > > > > >>>> producer's
> > > > > >>>> > auto.create.topics.enable config must be set to true and the
> > > > broker
> > > > > >>>> config should be set to false
> > > > > >>>>
> > > > > >>>> From a user's point of view, this seems counter-intuitive.  In
> > > > order to
> > > > > >>>> auto-create topics the broker's auto.create.topics.enable config
> > > > should be
> > > > > >>>> set to false?  It seems like the server-side auto-create is
> > > > unrelated to
> > > > > >>>> the client-side auto-create.  We could have both turned on (and
> > I'm
> > > > sure
> > > > > >>>> that in the real world, people will try this configuration...)
> > > > There's no
> > > > > >>>> reason not to support this, I think.
> > > > > >>>>
> > > > > >>>> We should add some documentation explaining the difference
> > between
> > > > > >>>> server-side and client-side auto-creation.  Without
> > documentation,
> > > > an admin
> > > > > >>>> might think that they had disabled all forms of auto-creation by
> > > > setting
> > > > > >>>> the -side setting to false-- but this is not the case, of
> > course.
> > > > > >>>>
> > > > > >>>> best,
> > > > > >>>> Colin
> > > > > >>>>
> > > > > >>>>
> > > > > >>>> On Thu, Jul 11, 2019, at 16:22, Justine Olshan wrote:
> > > > > >>>> > Hi Dhruvil,
> > > > > >>>> >
> > > > > >>>> > Thanks for reading the KIP!
> > > > > >>>> > That was the general idea for deprecation. We would log a
> > warning
> > > > > >>>> when the
> > > > > >>>> > config is enabled on the broker.
> > > > > >>>> > I also believe that there would be a change to documentation.
> > > > > >>>> > If there is anything else that should be done, please let me
> > know!
> > > > > >>>> >
> > > > > >>>> > Justine
> > > > > >>>> >
> > > > > >>>> > On Thu, Jul 11, 2019 at 4:17 PM Dhruvil Shah <
> > > > dhru...@confluent.io>
> > > > > >>>> wrote:
> > > > > >>>> >
> > > > > >>>> > > Hi Justine,
> > > > > >>>> > >
> > > > > >>>> > > Thanks for the KIP, this is great!
> > > > > >>>> > >
> > > > > >>>> > > Could you add some more information about what deprecating
> > the
> > > > > >>>> broker
> > > > > >>>> > > configuration means? Would we log a warning in the logs when
> > > > auto
> > > > > >>>> topic
> > > > > >>>> > > creation is enabled on the broker, for example?
> > > > > >>>> > >
> > > > > >>>> > > Thanks,
> > > > > >>>> > > Dhruvil
> > > > > >>>> > >
> > > > > >>>> > > On Thu, Jul 11, 2019 at 10:28 AM Justine Olshan <
> > > > > >>>> jols...@confluent.io>
> > > > > >>>> > > wrote:
> > > > > >>>> > >
> > > > > >>>> > > > Hello all,
> > > > > >>>> > > >
> > > > > >>>> > > > I'd like to start a discussion thread for KIP-487.
> > > > > >>>> > > > This KIP plans to deprecate the current system of
> > > > auto-creating
> > > > > >>>> topics
> > > > > >>>> > > > through requests to the metadata and give the producer the
> > > > > >>>> ability to
> > > > > >>>> > > > automatically create topics instead.
> > > > > >>>> > > >
> > > > > >>>> > > > More information can be found here:
> > > > > >>>> > > >
> > > > > >>>> > > >
> > > > > >>>> > >
> > > > > >>>>
> > > >
> > https://cwiki.apache.org/confluence/display/KAFKA/KIP-487%3A+Automatic+Topic+Creation+on+Producer
> > > > > >>>> > > >
> > > > > >>>> > > > Thank you,
> > > > > >>>> > > > Justine Olshan
> > > > > >>>> > > >
> > > > > >>>> > >
> > > > > >>>> >
> > > > > >>>>
> > > > > >>>
> > > >
> >

Reply via email to