scala - Hbase 0.96 with Spark v 1.0+ -
this combination of hbase / spark versions appears pretty toxic. have spent hours trying find various mergestrategy's work no avail.
here core of present build.sbt:
val sparkversion = "1.0.0" // val sparkversion = "1.1.0-snapshot" val hbaseversion = "0.96.1.1-cdh5.0.2" librarydependencies ++= seq( "org.apache.hbase" % "hbase-client" % hbaseversion, "org.apache.hbase" % "hbase-common" % hbaseversion, "org.apache.hbase" % "hbase-server" % hbaseversion, "org.apache.hbase" % "hbase-protocol" % hbaseversion, "org.apache.hbase" % "hbase-examples" % hbaseversion, ("org.apache.spark" % "spark-core_2.10" % sparkversion withsources()).excludeall(exclusionrule("org.mortbay.jetty")), "org.apache.spark" % "spark-sql_2.10" % sparkversion withsources() ) the following error message inevitably resurfaces:
14/06/27 19:49:24 info httpserver: starting http server [error] (run-main-0) java.lang.securityexception: class "javax.servlet.filterregistration"'s signer information not match signer information of other classes in same package java.lang.securityexception: class "javax.servlet.filterregistration"'s signer information not match signer information of other classes in same package @ java.lang.classloader.checkcerts(classloader.java:952) @ java.lang.classloader.predefineclass(classloader.java:666) @ java.lang.classloader.defineclass(classloader.java:794) @ java.security.secureclassloader.defineclass(secureclassloader.java:142) @ java.net.urlclassloader.defineclass(urlclassloader.java:449) @ java.net.urlclassloader.access$100(urlclassloader.java:71) @ java.net.urlclassloader$1.run(urlclassloader.java:361) @ java.net.urlclassloader$1.run(urlclassloader.java:355) @ java.security.accesscontroller.doprivileged(native method) @ java.net.urlclassloader.findclass(urlclassloader.java:354) @ java.lang.classloader.loadclass(classloader.java:425) @ java.lang.classloader.loadclass(classloader.java:358) @ org.eclipse.jetty.servlet.servletcontexthandler.<init>(servletcontexthandler.java:136) @ org.eclipse.jetty.servlet.servletcontexthandler.<init>(servletcontexthandler.java:129) @ org.eclipse.jetty.servlet.servletcontexthandler.<init>(servletcontexthandler.java:98) @ org.apache.spark.ui.jettyutils$.createservlethandler(jettyutils.scala:98) @ org.apache.spark.ui.jettyutils$.createservlethandler(jettyutils.scala:89) @ org.apache.spark.ui.webui.attachpage(webui.scala:65) @ org.apache.spark.ui.webui$$anonfun$attachtab$1.apply(webui.scala:58) @ org.apache.spark.ui.webui$$anonfun$attachtab$1.apply(webui.scala:58) @ scala.collection.mutable.resizablearray$class.foreach(resizablearray.scala:59) @ scala.collection.mutable.arraybuffer.foreach(arraybuffer.scala:47) @ org.apache.spark.ui.webui.attachtab(webui.scala:58) @ org.apache.spark.ui.sparkui.initialize(sparkui.scala:66) @ org.apache.spark.ui.sparkui.<init>(sparkui.scala:60) @ org.apache.spark.ui.sparkui.<init>(sparkui.scala:42) @ org.apache.spark.sparkcontext.<init>(sparkcontext.scala:222) @ org.apache.spark.sparkcontext.<init>(sparkcontext.scala:117) @ com.huawei.swlab.sparkpoc.hbase.hbasepop$.main(hbasepop.scala:31) @ com.huawei.swlab.sparkpoc.hbase.hbasepop.main(hbasepop.scala) @ sun.reflect.nativemethodaccessorimpl.invoke0(native method) @ sun.reflect.nativemethodaccessorimpl.invoke(nativemethodaccessorimpl.java:57) @ sun.reflect.delegatingmethodaccessorimpl.invoke(delegatingmethodaccessorimpl.java:43) @ java.lang.reflect.method.invoke(method.java:606) [trace] stack trace suppressed: run last *:runmain full output. 14/06/27 19:49:44 info connectionmanager: selector thread interrupted! java.lang.runtimeexception: nonzero exit code: 1
i getting exact same exception spark/hbase application. fixed moving org.mortbay.jetty exclusion rule hbase-server dependency:
librarydependencies += "org.apache.hbase" % "hbase-server" % "0.98.6-cdh5.2.0" excludeall exclusionrule(organization = "org.mortbay.jetty") if have hadoop-common 1 of direct dependencies, found necessary create exclusion rule javax.servlet depdendencies:
librarydependencies += "org.apache.hadoop" % "hadoop-common" % "2.5.0-cdh5.2.0" excludeall exclusionrule(organization = "javax.servlet") i left spark dependencies untouched:
librarydependencies += "org.apache.spark" %% "spark-core" % "1.1.0-cdh5.2.0" librarydependencies += "org.apache.spark" %% "spark-streaming" % "1.1.0-cdh5.2.0" librarydependencies += "org.apache.spark" %% "spark-streaming-kafka" % "1.1.0-cdh5.2.0"
Comments
Post a Comment