What about installing Phoenix coprocessors built with Java 8 into a Java 8
runtime that's running the currently built for jdk7 HBase? Shouldn't that
work fine?

On Tue, Dec 4, 2018, 16:16 Andrew Purtell <apurt...@apache.org wrote:

> I thought only the Avatica module aka PQS must be compiled using Java 8?
> Maybe you can script a Phoenix build that uses the Java 7 compiler for the
> coprocessor modules and a Java 8 compiler only for the PQS?
>
> Otherwise, if all Phoenix modules including the coprocessor code are
> compiled with Java 8, then HBase must also be compiled with Java 8. If you
> attempt to install Phoenix coprocessors compiled with Java 8 into a Java
> 7 + HBase runtime then you will see fatal runtime errors related to linkage
> errors in the concurrent data types.
>
>
> On Tue, Dec 4, 2018 at 1:54 PM Josh Elser <els...@apache.org> wrote:
>
> > On 12/4/18 3:28 PM, Sean Busbey wrote:
> > > On Tue, Dec 4, 2018 at 2:14 PM Josh Elser <els...@apache.org> wrote:
> > >>
> > >> Phoenix depends on Avatica for its Phoenix Query Server. Avatica
> > >> requires Java8. Thus, the impasse.
> > >>
> > >
> > > Generally our maintaining JDK7 support shouldn't limit the ability of
> > > any downstream user to require a newer JDK. Is there some context I'm
> > > missing? Are they manually recompiling some part of our codebase that
> > > doesn't work with JDK8? Or do they not want to have folks complaining
> > > to them for requiring a JDK update that we don't require?
> >
> > Phoenix isn't doing anything exceptional.
> >
> > I'm struggling to find the Phoenix thread where Andrew P suggested that
> > I start this discussion in HBase. I don't remember if Phoenix is using
> > JDK7 purely to build solely because HBase does, or if there is a
> > technical reason that this is required. I'll have to keep looking.
> >
> > >> I'd pose the question: are we really doing our users a service for
> > >> continuing to allow them to use Java7? Not trying to be contentious in
> > >> asking that -- I am just (happily) seeing fewer and fewer folks still
> on
> > >> Java7.
> > >
> > > Yes. Making it so downstream folks don't have to worry about certain
> > > categories of changes is the entire advantage of us declaring backward
> > > compatibility promises at all. JDK changes are a big deal in any
> > > deployment.
> > >
> > > As a project we already have a path forward for no longer worrying
> > > about maintaining Java 7 support; it's Apache HBase 2+. Providing
> > > advantages for that move and reducing the risk of updating to it is a
> > > straight forward way to remove our limitation on JDK features. IMHO,
> > > making it riskier to upgrade to newer 1.y minor versions is an
> > > undesirable way to drive that change.
> >
> > I disagree with you on this point but that is fine.
> >
>
>
> --
> Best regards,
> Andrew
>
> Words like orphans lost among the crosstalk, meaning torn from truth's
> decrepit hands
>    - A23, Crosstalk
>

Reply via email to