I would like have a decision on this so that we can merge the pull request.

If we can not come up with a solution everybody agrees, and nobody rejects
the VOTE, I'll start a VOTE thread in 24 hours.


On Tue, Aug 9, 2016 at 3:57 PM, Till Rohrmann <trohrm...@apache.org> wrote:

> That is a tough call but I'm personally leaning slightly towards not
> breaking the API and adding a note for the casting workaround.
>
> My main concern is where do we set the limit for future API breaking
> issues? How critical does an issue has to be to be allowed to break the
> API? Currently, we have 10 API breaking issues for Flink 2.0 [1]. Why not
> including one of them as well?
>
> I think that backwards compatibility (source as well as binary) is really
> important for many users and we have the duty to live up to our promises.
> Imho, if things are API breaking, then we should indeed bump the major
> version, as Greg suggested.
>
> [1] https://issues.apache.org/jira/browse/FLINK-3957
>
> Cheers,
> Till
>
> On Tue, Aug 9, 2016 at 2:20 PM, Greg Hogan <c...@greghogan.com> wrote:
>
> > I agree that expecting users to cast is undesirable. Upon changing the
> API,
> > why would we not mark the next release as 2.0?
> >
> > The same issue arose with Gabor's addition of hash-combine in the Scala
> > DataSet API where DataSet was returned rather than a specialized
> Operator.
> > The solution was to add an overloaded method.
> >
> > https://github.com/apache/flink/pull/1517/files#diff-
> > b1fea8d5283d978e9ccbc202dad36b5fR322
> >
> > On Mon, Aug 8, 2016 at 10:11 AM, Stephan Ewen <se...@apache.org> wrote:
> >
> > > Hi all!
> > >
> > > We have a problem in the *DataStream API* around Windows for *CoGroup*
> > and
> > > *Join*.
> > > These operations currently do not allow to set a parallelism, which is
> a
> > > pretty heavy problem.
> > >
> > > To fix it properly, we need to change the return types of the coGroup()
> > and
> > > join() operations, which *breaks the binary compatibility* - it*
> retains
> > > source compatibility*, though.
> > >
> > > The pull request with the change is:
> > > https://github.com/apache/flink/pull/2305
> > >
> > > There are very clumsy ways to work around this (custom casts in the
> user
> > > code or making the join() / coGroup() behave differently than the other
> > > operators) which we did not really think of as viable, because they
> would
> > > need to be changed again in the future once we pull the API straight
> > > (breaking even source compatibility then).
> > >
> > > *I would suggest to actually break the API* at that point (binary, not
> > > source) for *Flink 1.2* and add a big note in the release docs. An
> > > uncomfortable step, but the alternatives are quite bad, too.
> > >
> > > Have a look at what has been suggested in the pull request discussion
> and
> > > please let us know what you think about that so we can proceed.
> > >
> > > Greetings,
> > > Stephan
> > >
> >
>

Reply via email to