+1 (binding)

On Mon, Feb 25, 2019 at 4:32 AM Florian Hussonnois <fhussonn...@gmail.com>
wrote:

> Hi Kafka Team,
>
> I'd like to bring this thread back at the top of the email stack to get a
> chance to see this KIP merge in the next minor/major release.
>
> Thanks.
>
> Le ven. 18 janv. 2019 à 01:20, Florian Hussonnois <fhussonn...@gmail.com>
> a
> écrit :
>
> > Hey folks,
> >
> > This KIP has start since a while but has never been merged.
> >
> https://cwiki.apache.org/confluence/display/KAFKA/KIP-131+-+Add+access+to+OffsetStorageReader+from+SourceConnector
> > Would it be possible to restart the vote ? I still think this KIP could
> be
> > useful to implement connectors (the PR has been rebased)
> >
> > Thanks,
> >
> > Le ven. 22 sept. 2017 à 09:36, Florian Hussonnois <fhussonn...@gmail.com
> >
> > a écrit :
> >
> >> Hi team,
> >>
> >> Are there any more votes  ? Thanks
> >>
> >> Le 12 sept. 2017 20:18, "Gwen Shapira" <g...@confluent.io> a écrit :
> >>
> >>> Thanks for clarifying.
> >>>
> >>> +1 again :)
> >>>
> >>>
> >>>
> >>> On Sat, Sep 9, 2017 at 6:57 AM Randall Hauch <rha...@gmail.com> wrote:
> >>>
> >>> > Gwen,
> >>> >
> >>> > I've had more time to look into the code. First, the
> >>> OffsetStorageReader
> >>> > JavaDoc says: "OffsetStorageReader provides access to the offset
> >>> storage
> >>> > used by sources. This can be used by connectors to determine offsets
> to
> >>> > start consuming data from. This is most commonly used during
> >>> initialization
> >>> > of a task, but can also be used during runtime, e.g. when
> >>> reconfiguring a
> >>> > task."
> >>> >
> >>> > Second, this KIP allows the SourceConnector implementations to access
> >>> the
> >>> > OffsetStorageReader, but really the SourceConnector methods are
> *only*
> >>> > related to lifecycle changes when using the OffsetStorageReader would
> >>> be
> >>> > appropriate per the comment above.
> >>> >
> >>> > In summary, I don't think there is any concern about the
> >>> > OffsetStorageReader being used inappropriate by the SourceConnector
> >>> > implementations.
> >>> >
> >>> > Randall
> >>> >
> >>> > On Fri, Sep 8, 2017 at 9:46 AM, Gwen Shapira <g...@confluent.io>
> >>> wrote:
> >>> >
> >>> > > Basically, you are saying that the part where the comment says:
> >>> "Offset
> >>> > > data should only be read during startup or reconfiguration of a
> >>> task."
> >>> > > is incorrect? because the API extension allows reading offset data
> >>> at any
> >>> > > point in the lifecycle, right?
> >>> > >
> >>> > > On Fri, Sep 8, 2017 at 5:18 AM Florian Hussonnois <
> >>> fhussonn...@gmail.com
> >>> > >
> >>> > > wrote:
> >>> > >
> >>> > > > Hi Shapira,
> >>> > > >
> >>> > > > We only expose the OffsetStorageReader to connector which relies
> on
> >>> > > > KafkaOffsetBackingStore. The store continuesly consumes offsets
> >>> from
> >>> > > kafka
> >>> > > > so I think we can't have stale data.
> >>> > > >
> >>> > > >
> >>> > > > Le 8 sept. 2017 06:13, "Randall Hauch" <rha...@gmail.com> a
> écrit
> >>> :
> >>> > > >
> >>> > > > > The KIP and PR expose the OffsetStorageReader, which is already
> >>> > exposed
> >>> > > > to
> >>> > > > > the tasks. The OffsetStorageWriter is part of the
> >>> implementation, but
> >>> > > was
> >>> > > > > not and is not exposed thru the API.
> >>> > > > >
> >>> > > > > > On Sep 7, 2017, at 9:04 PM, Gwen Shapira <g...@confluent.io>
> >>> > wrote:
> >>> > > > > >
> >>> > > > > > I just re-read the code for the OffsetStorageWriter, and ran
> >>> into
> >>> > > this
> >>> > > > > > comment:
> >>> > > > > >
> >>> > > > > > * Note that this only provides write functionality. This is
> >>> > > > > > intentional to ensure stale data is
> >>> > > > > > * never read. Offset data should only be read during startup
> or
> >>> > > > > > reconfiguration of a task. By
> >>> > > > > > * always serving those requests by reading the values from
> the
> >>> > > backing
> >>> > > > > > store, we ensure we never
> >>> > > > > > * accidentally use stale data. (One example of how this can
> >>> occur:
> >>> > a
> >>> > > > > > task is processing input
> >>> > > > > > * partition A, writing offsets; reconfiguration causes
> >>> partition A
> >>> > to
> >>> > > > > > be reassigned elsewhere;
> >>> > > > > > * reconfiguration causes partition A to be reassigned to this
> >>> node,
> >>> > > > > > but now the offset data is out
> >>> > > > > > * of date). Since these offsets are created and managed by
> the
> >>> > > > > > connector itself, there's no way
> >>> > > > > > * for the offset management layer to know which keys are
> >>> "owned" by
> >>> > > > > > which tasks at any given
> >>> > > > > > * time.
> >>> > > > > >
> >>> > > > > >
> >>> > > > > > I can't figure out how the KIP avoids the stale-reads problem
> >>> > > explained
> >>> > > > > here.
> >>> > > > > >
> >>> > > > > > Can you talk me through it? I'm cancelling my vote since
> right
> >>> now
> >>> > > > > > exposing this interface sounds risky and misleading.
> >>> > > > > >
> >>> > > > > >
> >>> > > > > > Gwen
> >>> > > > > >
> >>> > > > > >
> >>> > > > > >> On Thu, Sep 7, 2017 at 5:04 PM Gwen Shapira <
> >>> g...@confluent.io>
> >>> > > > wrote:
> >>> > > > > >>
> >>> > > > > >> +1 (binding)
> >>> > > > > >>
> >>> > > > > >> Looking forward to see how connector implementations use
> this
> >>> in
> >>> > > > > practice
> >>> > > > > >> :)
> >>> > > > > >>
> >>> > > > > >>> On Thu, Sep 7, 2017 at 3:49 PM Randall Hauch <
> >>> rha...@gmail.com>
> >>> > > > wrote:
> >>> > > > > >>>
> >>> > > > > >>> I'd like to open the vote for KIP-131:
> >>> > > > > >>>
> >>> > > > > >>>
> https://cwiki.apache.org/confluence/display/KAFKA/KIP-131+-+
> >>> > > > > Add+access+to+OffsetStorageReader+from+SourceConnector
> >>> > > > > >>>
> >>> > > > > >>> Thanks to Florian for submitting the KIP and the
> >>> implementation,
> >>> > > and
> >>> > > > to
> >>> > > > > >>> everyone else that helped review.
> >>> > > > > >>>
> >>> > > > > >>> Best regards,
> >>> > > > > >>>
> >>> > > > > >>> Randall
> >>> > > > > >>>
> >>> > > > > >>
> >>> > > > >
> >>> > > >
> >>> > >
> >>> >
> >>>
> >>
> >
> > --
> > Florian HUSSONNOIS
> >
>
>
> --
> Florian HUSSONNOIS
>

Reply via email to