For state lock retries, I realized that for both global state stores and
local state stores we are using hard-coded retries today (different values
though: 5 and MAX).

Should we only use retries for global state, and use 0 for local state
store to fallback to the main loop?


Guozhang


On Fri, Nov 10, 2017 at 1:41 PM, Bill Bejeck <bbej...@gmail.com> wrote:

> Overall I'd agree with re-using the parameter for state lock retries.
>
> Would there ever be a case where you'd need to have them be different
> values?
>
> On Fri, Nov 10, 2017 at 4:17 PM, Ted Yu <yuzhih...@gmail.com> wrote:
>
> > bq. it would be worth to reuse both parameters for those
> >
> > I agree.
> >
> > On Fri, Nov 10, 2017 at 1:14 PM, Matthias J. Sax <matth...@confluent.io>
> > wrote:
> >
> > > Thanks for the feedback. Typos fixed.
> > >
> > > Damian explained already why we need the new strategy.
> > >
> > > @Kamal: many users don't want to retry but want to fail the Kafka
> Stream
> > > instance in case of an error. All default parameters are chosen to
> > > follow this pattern (similar to consumer/producer/broker defaults). The
> > > KIP aims to allow users to reconfigure Kafka Streams to be resilient
> > > against errors. It's a users choice to change configs to get better
> > > resilience.
> > >
> > >
> > > Update:
> > >
> > > While I was working on the PR, I realized that parameter
> > > "retry.backoff.ms" is already available in StreamsConfig. I updated
> the
> > > KIP accordingly.
> > >
> > > I also discovered, that we have a hard coded number of retries for
> state
> > > locks -- I think, it would be worth to reuse both parameters for those,
> > > too. WDYT?
> > >
> > > Here is the current PR: https://github.com/apache/kafka/pull/4206
> > >
> > >
> > > -Matthias
> > >
> > >
> > >
> > > On 11/9/17 2:29 PM, Guozhang Wang wrote:
> > > > Damian,
> > > >
> > > > You are right! I was dreaming at the wrong class :)
> > > >
> > > > Guozhang
> > > >
> > > >
> > > > On Thu, Nov 9, 2017 at 11:27 AM, Damian Guy <damian....@gmail.com>
> > > wrote:
> > > >
> > > >> Guozhang, i'm not sure i follow... Global stores aren't per task,
> they
> > > are
> > > >> per application instance and should be fully restored before the
> > stream
> > > >> threads start processing. They don't go through a rebalance as it is
> > > manual
> > > >> assignment of all partitions in the topic.
> > > >>
> > > >> On Thu, 9 Nov 2017 at 17:43 Guozhang Wang <wangg...@gmail.com>
> wrote:
> > > >>
> > > >>> Instead of restoring the global store during registration, could we
> > > also
> > > >> do
> > > >>> this after the rebalance callback as in the main loop? By doing
> this
> > we
> > > >> can
> > > >>> effectively swallow-and-retry-in-next-loop as we did for non-global
> > > >> stores.
> > > >>> Since global stores are per task not per thread, we would not
> process
> > > the
> > > >>> task after the global store is bootstrapped fully.
> > > >>>
> > > >>>
> > > >>> Guozhang
> > > >>>
> > > >>> On Thu, Nov 9, 2017 at 7:08 AM, Bill Bejeck <bbej...@gmail.com>
> > wrote:
> > > >>>
> > > >>>> Thanks for the KIP Matthias, +1 from me.
> > > >>>>
> > > >>>>
> > > >>>> -Bill
> > > >>>>
> > > >>>> On Thu, Nov 9, 2017 at 8:40 AM, Ted Yu <yuzhih...@gmail.com>
> wrote:
> > > >>>>
> > > >>>>> lgtm
> > > >>>>>
> > > >>>>> bq. pass both parameter
> > > >>>>>
> > > >>>>> parameter should be in plural.
> > > >>>>> Same with 'two new configuration parameter'
> > > >>>>>
> > > >>>>> Cheers
> > > >>>>>
> > > >>>>> On Thu, Nov 9, 2017 at 4:20 AM, Damian Guy <damian....@gmail.com
> >
> > > >>> wrote:
> > > >>>>>
> > > >>>>>> Thanks Matthias, LGTM
> > > >>>>>>
> > > >>>>>> On Thu, 9 Nov 2017 at 11:13 Matthias J. Sax <
> > matth...@confluent.io
> > > >>>
> > > >>>>> wrote:
> > > >>>>>>
> > > >>>>>>> Hi,
> > > >>>>>>>
> > > >>>>>>> I want to propose a new KIP to make Streams API more resilient
> to
> > > >>>>> broker
> > > >>>>>>> disconnections.
> > > >>>>>>>
> > > >>>>>>>
> > > >>>>>>> https://cwiki.apache.org/confluence/display/KAFKA/KIP-
> > > >>>>>> 224%3A+Add+configuration+parameters+%60retries%60+and+%
> > > >>>>>> 60retry.backoff.ms%60+to+Streams+API
> > > >>>>>>>
> > > >>>>>>>
> > > >>>>>>> -Matthias
> > > >>>>>>>
> > > >>>>>>>
> > > >>>>>>
> > > >>>>>
> > > >>>>
> > > >>>
> > > >>>
> > > >>>
> > > >>> --
> > > >>> -- Guozhang
> > > >>>
> > > >>
> > > >
> > > >
> > > >
> > >
> > >
> >
>



-- 
-- Guozhang

Reply via email to