Hi Calvin, thanks for the KIP! A couple questions below:

- Would it make sense to make the broker epoch a tagged field inside the
Fetch request? It is a little annoying to increase the size of consumer
fetch requests for a field that they will not use. Perhaps we could factor
out broker id and broker epoch into a tagged struct:

    { "name": "ReplicaId", "type": "int32", "versions": "0-13",
"entityType": "brokerId",
      "about": "The broker ID of the follower, of -1 if this request is
from a consumer." },
    { "name": "BrokerState", "type": "BrokerState", "taggedVersions":
"14+", "tag": 1, "fields": [
      { "name": "BrokerId", "type": "int32", "versions": "14+",
"entityType": "brokerId",
        "about": "The broker ID of the follower, of -1 if this request is
from a consumer." },
      { "name": "BrokerEpoch", "type": "int64", "versions": "14+", "about":
"The epoch of this follower." }
    ]},

- The KIP mentions that this will only be implemented for kraft. I guess
it's probably easier to send along the broker epoch in any case in both
Fetch and AlterPartition? Are we saving much by not implementing the logic
in the old controller? I don't think it involves any new state.

Thanks,
Jason

On Tue, Feb 14, 2023 at 12:40 AM David Jacot <dja...@confluent.io.invalid>
wrote:

> +1 (binding). Thanks for the KIP, Calvin!
>
> On Tue, Feb 14, 2023 at 1:10 AM Jun Rao <j...@confluent.io.invalid> wrote:
>
> > Hi, Calvin,
> >
> > Thanks for the KIP. +1
> >
> > Jun
> >
> > On Fri, Feb 10, 2023 at 11:03 AM Alexandre Dupriez <
> > alexandre.dupr...@gmail.com> wrote:
> >
> > > +1 (non-binding).
> > >
> > > Le ven. 10 févr. 2023 à 19:02, Calvin Liu <ca...@confluent.io.invalid>
> a
> > > écrit :
> > > >
> > > > Hi all,
> > > >
> > > > I'd like to call for a vote on KIP-903, which proposes a fix to the
> > > broker
> > > > reboot data loss KAFKA-14139
> > > > <https://issues.apache.org/jira/browse/KAFKA-14139>
> > > > It changes the Fetch and AlterPartition requests to include the
> broker
> > > > epochs. Then the controller can use these epochs to help reject the
> > stale
> > > > AlterPartition request.
> > > >
> > > > KIP:
> > > >
> > >
> >
> https://cwiki.apache.org/confluence/display/KAFKA/KIP-903%3A+Replicas+with+stale+broker+epoch+should+not+be+allowed+to+join+the+ISR
> > > >
> > > > Discussion thread:
> > > > https://lists.apache.org/thread/vk9h68qpqqq69nlzbvxqx2yfbmzcd0mo
> > >
> >
>

Reply via email to