[ https://issues.apache.org/jira/browse/PHOENIX-6312?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Istvan Toth updated PHOENIX-6312: --------------------------------- Affects Version/s: 5.1.0 > Need a util method in PhoenixMapReduceUtil along the lines of > TableMapReduceUtil.addHBaseDependencyJars > ------------------------------------------------------------------------------------------------------- > > Key: PHOENIX-6312 > URL: https://issues.apache.org/jira/browse/PHOENIX-6312 > Project: Phoenix > Issue Type: Improvement > Affects Versions: 5.1.0, 4.x > Reporter: Jacob Isaac > Priority: Blocker > Fix For: 4.16.0, 4.x > > > Now that we have phoenix-hbase-compat-x-x-x jars, We need to have the classes > in the compat jar made available to the MR jobs. > TableMapReduceUtil.addHBaseDependencyJars is an example of how hbase > dependency jars are made available to the MR job. > We get the following exception when these jars are not made available to MR > jobs > Error: java.lang.ClassNotFoundException: > org.apache.phoenix.compat.hbase.CompatRpcControllerFactory at > java.net.URLClassLoader.findClass(URLClassLoader.java:381) at > java.lang.ClassLoader.loadClass(ClassLoader.java:424) at > sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349) at > java.lang.ClassLoader.loadClass(ClassLoader.java:357) at > java.lang.ClassLoader.defineClass1(Native Method) at > java.lang.ClassLoader.defineClass(ClassLoader.java:763) at > java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) at > java.net.URLClassLoader.defineClass(URLClassLoader.java:467) at > java.net.URLClassLoader.access$100(URLClassLoader.java:73) at > java.net.URLClassLoader$1.run(URLClassLoader.java:368) at > java.net.URLClassLoader$1.run(URLClassLoader.java:362) at > java.security.AccessController.doPrivileged(Native Method) at > java.net.URLClassLoader.findClass(URLClassLoader.java:361) at > java.lang.ClassLoader.loadClass(ClassLoader.java:424) at > sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349) at > java.lang.ClassLoader.loadClass(ClassLoader.java:357) at > org.apache.phoenix.query.QueryServicesOptions.<clinit>(QueryServicesOptions.java:288) > at > org.apache.phoenix.query.QueryServicesImpl.<init>(QueryServicesImpl.java:36) > at > org.apache.phoenix.jdbc.PhoenixDriver.getQueryServices(PhoenixDriver.java:197) > at > org.apache.phoenix.jdbc.PhoenixDriver.getConnectionQueryServices(PhoenixDriver.java:235) > at > org.apache.phoenix.jdbc.PhoenixEmbeddedDriver.createConnection(PhoenixEmbeddedDriver.java:142) > at org.apache.phoenix.jdbc.PhoenixDriver.connect(PhoenixDriver.java:221) at > java.sql.DriverManager.getConnection(DriverManager.java:664) at > java.sql.DriverManager.getConnection(DriverManager.java:208) at > org.apache.phoenix.mapreduce.util.ConnectionUtil.getConnection(ConnectionUtil.java:113) > at > org.apache.phoenix.mapreduce.util.ConnectionUtil.getInputConnection(ConnectionUtil.java:58) > at > org.apache.phoenix.mapreduce.PhoenixServerBuildIndexInputFormat.getQueryPlan(PhoenixServerBuildIndexInputFormat.java:94) > at > org.apache.phoenix.mapreduce.PhoenixInputFormat.createRecordReader(PhoenixInputFormat.java:79) > at > org.apache.hadoop.mapred.MapTask$NewTrackingRecordReader.<init>(MapTask.java:521) > at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:764) at > org.apache.hadoop.mapred.MapTask.run(MapTask.java:341) at > org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:177) at > java.security.AccessController.doPrivileged(Native Method) at > javax.security.auth.Subject.doAs(Subject.java:422) at > org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1926) > at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:171) > -- This message was sent by Atlassian Jira (v8.3.4#803005)