Page MenuHomePhabricator

Possible issue between Maxmind and Hive 2.x libs in Refinery source
Closed, ResolvedPublic

Description

I am testing webrequest_load in Hadoop test, using the following configs:

Everything works as expected, except the yarn refine job that throws this error:

Error: Error running query: java.lang.NoSuchMethodError: com.maxmind.geoip2.DatabaseReader.<init>(Lcom/maxmind/geoip2/DatabaseReader$Builder;Lcom/maxmind/geoip2/DatabaseR
eader$1;)V (state=,code=0)
org.apache.hive.service.cli.HiveSQLException: Error running query: java.lang.NoSuchMethodError: com.maxmind.geoip2.DatabaseReader.<init>(Lcom/maxmind/geoip2/DatabaseReade
r$Builder;Lcom/maxmind/geoip2/DatabaseReader$1;)V
        at org.apache.hive.jdbc.Utils.verifySuccess(Utils.java:267)
        at org.apache.hive.jdbc.Utils.verifySuccessWithInfo(Utils.java:253)
        at org.apache.hive.jdbc.HiveStatement.runAsyncOnServer(HiveStatement.java:313)
        at org.apache.hive.jdbc.HiveStatement.execute(HiveStatement.java:253)
        at org.apache.hive.beeline.Commands.executeInternal(Commands.java:997)
        at org.apache.hive.beeline.Commands.execute(Commands.java:1205)
        at org.apache.hive.beeline.Commands.sql(Commands.java:1134)
        at org.apache.hive.beeline.BeeLine.dispatch(BeeLine.java:1314)
        at org.apache.hive.beeline.BeeLine.execute(BeeLine.java:1178)
        at org.apache.hive.beeline.BeeLine.executeFile(BeeLine.java:1155)
        at org.apache.hive.beeline.BeeLine.begin(BeeLine.java:1026)
        at org.apache.oozie.action.hadoop.Hive2Main.runBeeline(Hive2Main.java:267)
        at org.apache.oozie.action.hadoop.Hive2Main.run(Hive2Main.java:241)
        at org.apache.oozie.action.hadoop.LauncherMain.run(LauncherMain.java
[..]

The above seems very close to what described in https://stackoverflow.com/questions/56261083/how-to-fix-java-lang-nosuchmethoderror-for-geoip2-java-running-under-hive

In Hadoop test we are running Bigtop with Hive 2.x, that is different from what what we run in production. My previous tests were all based on old versions of refinery, there might be something to do before upgrading to Bigtop.

It could also be that it is a problem with my testing environment :)

Event Timeline

elukey renamed this task from Possible between Maxmind and Hive 2.x libs in Refinery source to Possible issue between Maxmind and Hive 2.x libs in Refinery source .Oct 23 2020, 10:23 AM
fdans moved this task from Incoming to Operational Excellence on the Analytics board.

Change 636662 had a related patch set uploaded (by Joal; owner: Joal):
[analytics/refinery/source@master] Fix maxmind UDFs for hive 2.3.3 (bigtop)

https://gerrit.wikimedia.org/r/636662

Following the stackoverflow link pasted in the task I have:

Change 636721 had a related patch set uploaded (by Joal; owner: Joal):
[analytics/refinery@master] Bump hive-jar of webrequest-load job to v0.0.138

https://gerrit.wikimedia.org/r/636721

Change 636662 merged by jenkins-bot:
[analytics/refinery/source@master] Fix maxmind UDFs for hive 2.3.3 (bigtop)

https://gerrit.wikimedia.org/r/636662

Change 636721 merged by Milimetric:
[analytics/refinery@master] Bump hive-jar of webrequest-load job to v0.0.138

https://gerrit.wikimedia.org/r/636721