IBMStreams / streamsx.hbase

Integration of IBM Streams and Apache HBase

Home Page:http://ibmstreams.github.io/streamsx.hbase/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Error in initialize(): NoClassDefFoundError: org.apache.commons.lang3.StringUtils

markheger opened this issue · comments

Test with hbase toolkit v3.9.0 failed.

python3 -u -m unittest test_hbase.TestDistributedDownloadToolkit
<class 'test_hbase.TestDistributedDownloadToolkit'>
Download: https://github.com//IBMStreams/streamsx.hbase/releases/download/v3.9.0/streamsx.hbase.toolkits-3.9.0-20200924-1059.tgz
100% [........................................................................] 26267002 / 26267002
  <toolkit name="com.ibm.streamsx.hbase" version="3.9.0">

------ test_hbase_operators ------
Job 3 PE 3 launch count > 1: 4
Job 3 wait for healthy actually failed
Job 3 Wait for healthy failed
F

This is caused by java.lang.NoClassDefFoundError: org.apache.commons.lang3.StringUtils in initialize() of the HBase operator.

Exception in thread "Thread-11" java.lang.NoClassDefFoundError: org.apache.commons.lang3.StringUtils
	at org.apache.hadoop.metrics2.lib.MutableMetricsFactory.getName(MutableMetricsFactory.java:134)
	at org.apache.hadoop.metrics2.lib.MutableMetricsFactory.getInfo(MutableMetricsFactory.java:130)
	at org.apache.hadoop.metrics2.lib.MutableMetricsFactory.newForField(MutableMetricsFactory.java:45)
	at org.apache.hadoop.metrics2.lib.MetricsSourceBuilder.add(MetricsSourceBuilder.java:147)
	at org.apache.hadoop.metrics2.lib.MetricsSourceBuilder.<init>(MetricsSourceBuilder.java:69)
	at org.apache.hadoop.metrics2.lib.MetricsAnnotations.newSourceBuilder(MetricsAnnotations.java:43)
	at org.apache.hadoop.metrics2.impl.MetricsSystemImpl.register(MetricsSystemImpl.java:223)
	at org.apache.hadoop.metrics2.MetricsSystem.register(MetricsSystem.java:71)
	at org.apache.hadoop.security.UserGroupInformation$UgiMetrics.create(UserGroupInformation.java:149)
	at org.apache.hadoop.security.UserGroupInformation.<clinit>(UserGroupInformation.java:265)
	at org.apache.hadoop.conf.Configuration$Resource.getRestrictParserDefault(Configuration.java:284)
	at org.apache.hadoop.conf.Configuration$Resource.<init>(Configuration.java:257)
	at org.apache.hadoop.conf.Configuration$Resource.<init>(Configuration.java:249)
	at org.apache.hadoop.conf.Configuration.addResource(Configuration.java:955)
	at com.ibm.streamsx.hbase.HBASEOperator.getConnection(HBASEOperator.java:413)
	at com.ibm.streamsx.hbase.HBASEOperator.initialize(HBASEOperator.java:407)
	at com.ibm.streamsx.hbase.HBASEOperatorWithInput.initialize(HBASEOperatorWithInput.java:133)
	at com.ibm.streamsx.hbase.HBASEPutDelete.initialize(HBASEPutDelete.java:177)
	at com.ibm.streamsx.hbase.HBASEPut.initialize(HBASEPut.java:224)
	at com.ibm.streams.operator.internal.runtime.api.OperatorAdapter.initialize(OperatorAdapter.java:745)
	at com.ibm.streams.operator.internal.jni.JNIBridge.<init>(JNIBridge.java:277)
Caused by: java.lang.ClassNotFoundException: org.apache.commons.lang3.StringUtils
	at java.net.URLClassLoader.findClass(URLClassLoader.java:609)
	at java.lang.ClassLoader.loadClassHelper(ClassLoader.java:926)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:871)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:854)
	... 21 more
Exception in thread "Thread-11" java.lang.NoClassDefFoundError: org.apache.commons.lang3.StringUtils
	at org.apache.hadoop.metrics2.lib.MutableMetricsFactory.getName(MutableMetricsFactory.java:134)
	at org.apache.hadoop.metrics2.lib.MutableMetricsFactory.getInfo(MutableMetricsFactory.java:130)
	at org.apache.hadoop.metrics2.lib.MutableMetricsFactory.newForField(MutableMetricsFactory.java:45)
	at org.apache.hadoop.metrics2.lib.MetricsSourceBuilder.add(MetricsSourceBuilder.java:147)
	at org.apache.hadoop.metrics2.lib.MetricsSourceBuilder.<init>(MetricsSourceBuilder.java:69)
	at org.apache.hadoop.metrics2.lib.MetricsAnnotations.newSourceBuilder(MetricsAnnotations.java:43)
	at org.apache.hadoop.metrics2.impl.MetricsSystemImpl.register(MetricsSystemImpl.java:223)
	at org.apache.hadoop.metrics2.MetricsSystem.register(MetricsSystem.java:71)
	at org.apache.hadoop.security.UserGroupInformation$UgiMetrics.create(UserGroupInformation.java:149)
	at org.apache.hadoop.security.UserGroupInformation.<clinit>(UserGroupInformation.java:265)
	at org.apache.hadoop.conf.Configuration$Resource.getRestrictParserDefault(Configuration.java:284)
	at org.apache.hadoop.conf.Configuration$Resource.<init>(Configuration.java:257)
	at org.apache.hadoop.conf.Configuration$Resource.<init>(Configuration.java:249)
	at org.apache.hadoop.conf.Configuration.addResource(Configuration.java:955)
	at com.ibm.streamsx.hbase.HBASEOperator.getConnection(HBASEOperator.java:413)
	at com.ibm.streamsx.hbase.HBASEOperator.initialize(HBASEOperator.java:407)
	at com.ibm.streamsx.hbase.HBASEOperatorWithInput.initialize(HBASEOperatorWithInput.java:133)
	at com.ibm.streamsx.hbase.HBASEPutDelete.initialize(HBASEPutDelete.java:177)
	at com.ibm.streamsx.hbase.HBASEPut.initialize(HBASEPut.java:224)
	at com.ibm.streams.operator.internal.runtime.api.OperatorAdapter.initialize(OperatorAdapter.java:745)
	at com.ibm.streams.operator.internal.jni.JNIBridge.<init>(JNIBridge.java:277)
Caused by: java.lang.ClassNotFoundException: org.apache.commons.lang3.StringUtils
	at java.net.URLClassLoader.findClass(URLClassLoader.java:609)
	at java.lang.ClassLoader.loadClassHelper(ClassLoader.java:926)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:871)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:854)
	... 21 more
Exception in thread "Thread-11" java.lang.NoClassDefFoundError: org.apache.commons.lang3.StringUtils
	at org.apache.hadoop.metrics2.lib.MutableMetricsFactory.getName(MutableMetricsFactory.java:134)
	at org.apache.hadoop.metrics2.lib.MutableMetricsFactory.getInfo(MutableMetricsFactory.java:130)
	at org.apache.hadoop.metrics2.lib.MutableMetricsFactory.newForField(MutableMetricsFactory.java:45)
	at org.apache.hadoop.metrics2.lib.MetricsSourceBuilder.add(MetricsSourceBuilder.java:147)
	at org.apache.hadoop.metrics2.lib.MetricsSourceBuilder.<init>(MetricsSourceBuilder.java:69)
	at org.apache.hadoop.metrics2.lib.MetricsAnnotations.newSourceBuilder(MetricsAnnotations.java:43)
	at org.apache.hadoop.metrics2.impl.MetricsSystemImpl.register(MetricsSystemImpl.java:223)
	at org.apache.hadoop.metrics2.MetricsSystem.register(MetricsSystem.java:71)
	at org.apache.hadoop.security.UserGroupInformation$UgiMetrics.create(UserGroupInformation.java:149)
	at org.apache.hadoop.security.UserGroupInformation.<clinit>(UserGroupInformation.java:265)
	at org.apache.hadoop.conf.Configuration$Resource.getRestrictParserDefault(Configuration.java:284)
	at org.apache.hadoop.conf.Configuration$Resource.<init>(Configuration.java:257)
	at org.apache.hadoop.conf.Configuration$Resource.<init>(Configuration.java:249)
	at org.apache.hadoop.conf.Configuration.addResource(Configuration.java:955)
	at com.ibm.streamsx.hbase.HBASEOperator.getConnection(HBASEOperator.java:413)
	at com.ibm.streamsx.hbase.HBASEOperator.initialize(HBASEOperator.java:407)
	at com.ibm.streamsx.hbase.HBASEOperatorWithInput.initialize(HBASEOperatorWithInput.java:133)
	at com.ibm.streamsx.hbase.HBASEPutDelete.initialize(HBASEPutDelete.java:177)
	at com.ibm.streamsx.hbase.HBASEPut.initialize(HBASEPut.java:224)
	at com.ibm.streams.operator.internal.runtime.api.OperatorAdapter.initialize(OperatorAdapter.java:745)
	at com.ibm.streams.operator.internal.jni.JNIBridge.<init>(JNIBridge.java:277)
Caused by: java.lang.ClassNotFoundException: org.apache.commons.lang3.StringUtils
	at java.net.URLClassLoader.findClass(URLClassLoader.java:609)
	at java.lang.ClassLoader.loadClassHelper(ClassLoader.java:926)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:871)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:854)
	... 21 more