troywinter
01/18/2021, 3:18 PM2021/01/18 10:26:32.704 INFO [ControllerStarter] [main] Initializing PinotFSFactory
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/hadoop/fs/FSDataInputStream
at java.lang.Class.getDeclaredConstructors0(Native Method)
at java.lang.Class.privateGetDeclaredConstructors(Class.java:2671)
at java.lang.Class.getConstructor0(Class.java:3075)
at java.lang.Class.getConstructor(Class.java:1825)
at org.apache.pinot.spi.plugin.PluginManager.createInstance(PluginManager.java:295)
at org.apache.pinot.spi.plugin.PluginManager.createInstance(PluginManager.java:264)
at org.apache.pinot.spi.plugin.PluginManager.createInstance(PluginManager.java:245)
at org.apache.pinot.spi.filesystem.PinotFSFactory.register(PinotFSFactory.java:53)
at org.apache.pinot.spi.filesystem.PinotFSFactory.init(PinotFSFactory.java:74)
at org.apache.pinot.controller.ControllerStarter.initPinotFSFactory(ControllerStarter.java:481)
at org.apache.pinot.controller.ControllerStarter.setUpPinotController(ControllerStarter.java:329)
at org.apache.pinot.controller.ControllerStarter.start(ControllerStarter.java:287)
at org.apache.pinot.tools.service.PinotServiceManager.startController(PinotServiceManager.java:116)
at org.apache.pinot.tools.service.PinotServiceManager.startRole(PinotServiceManager.java:91)
at org.apache.pinot.tools.admin.command.StartServiceManagerCommand.lambda$startBootstrapServices$0(StartServiceManagerCommand.java:234)
at org.apache.pinot.tools.admin.command.StartServiceManagerCommand.startPinotService(StartServiceManagerCommand.java:286)
at org.apache.pinot.tools.admin.command.StartServiceManagerCommand.startBootstrapServices(StartServiceManagerCommand.java:233)
at org.apache.pinot.tools.admin.command.StartServiceManagerCommand.execute(StartServiceManagerCommand.java:183)
at org.apache.pinot.tools.admin.command.StartControllerCommand.execute(StartControllerCommand.java:130)
at org.apache.pinot.tools.admin.PinotAdministrator.execute(PinotAdministrator.java:162)
at org.apache.pinot.tools.admin.PinotAdministrator.main(PinotAdministrator.java:182)
Caused by: java.lang.ClassNotFoundException: org.apache.hadoop.fs.FSDataInputStream
at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
at java.lang.ClassLoader.loadClass(ClassLoader.java:418)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:352)
at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
... 21 more
And below are the startup opts:
JAVA_OPTS -Xms256M -Xmx1G -XX:+UseG1GC -XX:MaxGCPauseMillis=200 -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintGCApplicationStoppedTime -XX:+PrintGCApplicationConcurrentTime -Xloggc:/opt/pinot/gc-pinot-controller.log -Dlog4j2.configurationFile=/opt/pinot/conf/pinot-controller-log4j2.xml -Dplugins.dir=/opt/pinot/plugins -Dplugins.include=pinot-hdfs -classpath /opt/hadoop-lib/hadoop-common-3.1.1.3.1.0.0-78.jar:/opt/hadoop-lib/hadoop-client-3.1.1.3.1.0.0-78.jar:/opt/hadoop-lib/hadoop-hdfs-3.1.1.3.1.0.0-78.jar:/opt/hadoop-lib/hadoop-hdfs-client-3.1.1.3.1.0.0-78.jar
Ken Krugler
01/18/2021, 5:14 PMKen Krugler
01/18/2021, 5:16 PMtroywinter
01/19/2021, 2:55 AMYou will also need to provide proper Hadoop dependencies jars from your Hadoop installation to your Pinot startup scripts.
from the documentation, https://docs.pinot.apache.org/basics/data-import/pinot-file-system/import-from-hdfs , I think this means I should provide the version that match my hadoop version?troywinter
01/19/2021, 6:42 AMKen Krugler
01/19/2021, 3:55 PM-classpath
doesn’t work, but CLASSPATH_PREFIX
does work).troywinter
01/20/2021, 3:44 AMCLASSPATH_PREFIX
and append to CLASSPATH
, then add to the program args.