Hi Andrew,

thanks for the reply.
I should have been more specific: We only tried to compile the "client"
part that's used in Spark itself and we used the proper versions

mvn -Dspark.version=XXX -Dscala.version=XXX -Dhadoop-three.version=XXX
-Dscala.binary.version=XXX -Dhbase.version=XXX clean package

I assume that should pull in the correct dependencies but I have to admit
that I didn't check, took it straight from the readme.
We wanted to try the server bit for the RegionServers afterwards but didn't
even get to it yet.

We have this on our radar though and might try to work through those issues
at some point.
If we get started on that I'll ping the list.

Cheers,
Lars

On Wed, Oct 19, 2022 at 1:41 AM Andrew Purtell <apurt...@apache.org> wrote:

> Out of the box use is going to be problematic without recompiling HBase for
> Hadoop 3. Spark 3.3 ships with Hadoop 3.3.2. Apache HBase 2.4.x (and all
> 2.x) releases are compiled against Hadoop 2. Link errors (ClassNotFound,
> NoClassDef, etc) I think are to be expected because the class hierarchies
> of various Hadoop things have been incompatibly changed in 3.x releases
> relative to 2.x. This is not unreasonable. Semantic versioning suggests
> breaking changes can be expected in a major version increment.
>
> Users probably need to do a holistic (or hermetic, if you prefer) build of
> their bill of materials before testing it or certainly before shipping it.
> Build your HBase for the version of Hadoop you are actually shipping it
> with, as opposed to whatever the upstream project picks as a default build
> target. They are called "convenience binaries" by the project and the
> Foundation for a reason. Convenience may vary according to your
> circumstances. When HBase finally ships builds compiled against Hadoop 3 by
> default, anyone still using 2.x in production will face the same problem
> (in reverse). The Phoenix project also faces this issue for what it's
> worth. Their readme and build instructions walk users through rebuilding
> HBase using -Dhadoop.profile=3.0 as a first step as well.
>
>
> On Mon, Oct 17, 2022 at 1:52 PM Lars Francke <lars.fran...@gmail.com>
> wrote:
>
> > Hi everyone,
> >
> > we've just recently tried getting the HBase Spark connector running
> against
> > Spark 3.3 and HBase 2.4.x and failed miserably. It was a mess of Scala
> and
> > Java issues, classpath, NoClassDef etc.
> >
> > The trauma is too recent for me to dig up the details but if needed I can
> > ;-)
> >
> > For now I'm just wondering if anyone has succeeded using this
> combination?
> >
> > Cheers,
> > Lars
> >
>
>
> --
> Best regards,
> Andrew
>
> Unrest, ignorance distilled, nihilistic imbeciles -
>     It's what we’ve earned
> Welcome, apocalypse, what’s taken you so long?
> Bring us the fitting end that we’ve been counting on
>    - A23, Welcome, Apocalypse
>

Reply via email to