On Tue, Apr 28, 2015 at 1:03 PM, Ewen Cheslack-Postava <e...@confluent.io>
wrote:

> Good point Jay. More specifically we were already implementing without the
> checked exception, we'd need to override close() in the Serializer and
> Deserializer interfaces and omit the throws clause. That definitely makes
> them source compatible. Not sure about binary compatibility, I couldn't
> find a quick answer but I think it's probably still compatible.
>
> -Ewen
>
> On Tue, Apr 28, 2015 at 12:30 PM, Jay Kreps <jay.kr...@gmail.com> wrote:
>
> > Hey guys,
> >
> > You can implement Closable without the checked exception. Having close()
> > methods throw checked exceptions isn't very useful unless there is a way
> > for the caller to recover. In this case there really isn't, right?
> >
> > -Jay
> >
> > On Mon, Apr 27, 2015 at 5:51 PM, Guozhang Wang <wangg...@gmail.com>
> wrote:
> >
> > > Folks,
> > >
> > > In a recent commit I made regarding KAFKA-2121, there is an omitted API
> > > change which makes Serializer / Deserializer extending from Closeable,
> > > whose close() call could throw IOException by declaration. Hence now
> some
> > > scenario like:
> > >
> > > ---------------------
> > >
> > > Serializer<T> keySerializer = ...
> > > Serializer<T> valueSerializer = ...
> > > KafkaProducer producer = new KafkaProducer(config, keySerializer,
> > > valueSerializer)
> > > // ...
> > > keySerializer.close()
> > > valueSerializer.close()
> > >
> > > ---------------------
> > >
> > > will need to capture IOException now.
> > >
> > > Want to bring this up for people's attention, and you opinion on
> whether
> > we
> > > should revert this change?
> > >
> > > -- Guozhang
> > >
> >
>
>
>
> --
> Thanks,
> Ewen
>

Reply via email to