Hi, I have a cluster (Hortonworks supported system) running Apache spark on 1.5.2 on Java 7, installed by admin. Java 8 is also installed.
I don't have admin access to this cluster and would like to run spark (1.5.2 and later versions) on java 8. I come from HPC/MPI background. So I naively copied all executables of spark "/usr/hdp/current/spark-client/" into my root folder. When I run spark-shell from my copied folder, it runs as expected on java 7. When I change $JAVA_HOME to point to java 8, and run spark-shell, I get the following error. Could you please help me fix this error? Exception in thread "main" java.security.NoSuchAlgorithmException: Error constructing implementation (algorithm: Default, provider: SunJSSE, class: sun.security.ssl.SSLContextImpl$DefaultSSLContext) at java.security. Provider$Service.newInstance(Provider.java:1617) at sun.security.jca. GetInstance.getInstance(GetInstance.java:236) at sun.security.jca. GetInstance.getInstance(GetInstance.java:164) at javax.net.ssl.SSLContext. getInstance(SSLContext.java:156) at javax.net.ssl.SSLContext.getDefault( SSLContext.java:96) at org.apache.spark.SSLOptions.liftedTree1$1(SSLOptions. scala:122) at org.apache.spark.SSLOptions.<init>(SSLOptions.scala:114) at org.apache.spark.SSLOptions$.parse(SSLOptions.scala:199) at org.apache.spark .SecurityManager.<init>(SecurityManager.scala:243) at org.apache.spark.repl. SparkIMain.<init>(SparkIMain.scala:118) at org.apache.spark.repl. SparkILoop$SparkILoopInterpreter.<init>(SparkILoop.scala:187) at org.apache. spark.repl.SparkILoop.createInterpreter(SparkILoop.scala:217) at org.apache. spark.repl.SparkILoop$$anonfun$org$apache$spark$repl$SparkILoop$$process$1. apply$mcZ$sp(SparkILoop.scala:949) at org.apache.spark.repl. SparkILoop$$anonfun$org$apache$spark$repl$SparkILoop$$process$1.apply( SparkILoop.scala:945) at org.apache.spark.repl. SparkILoop$$anonfun$org$apache$spark$repl$SparkILoop$$process$1.apply( SparkILoop.scala:945) at scala.tools.nsc.util.ScalaClassLoader$. savingContextLoader(ScalaClassLoader.scala:135) at org.apache.spark.repl. SparkILoop.org$apache$spark$repl$SparkILoop$$process(SparkILoop.scala:945) at org.apache.spark.repl.SparkILoop.process(SparkILoop.scala:1059) at org. apache.spark.repl.Main$.main(Main.scala:31) at org.apache.spark.repl.Main. main(Main.scala) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke( NativeMethodAccessorImpl.java:62) at sun.reflect. DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:497) at org.apache.spark. deploy.SparkSubmit$.org$apache$spark$deploy$SparkSubmit$$runMain(SparkSubmit .scala:685) at org.apache.spark.deploy.SparkSubmit$.doRunMain$1(SparkSubmit. scala:180) at org.apache.spark.deploy.SparkSubmit$.submit(SparkSubmit.scala: 205) at org.apache.spark.deploy.SparkSubmit$.main(SparkSubmit.scala:120) at org.apache.spark.deploy.SparkSubmit.main(SparkSubmit.scala) Caused by: java. io.EOFException at java.io.DataInputStream.readInt(DataInputStream.java:392) at sun.security.provider.JavaKeyStore.engineLoad(JavaKeyStore.java:653) at sun.security.provider.JavaKeyStore$JKS.engineLoad(JavaKeyStore.java:56) at sun.security.provider.KeyStoreDelegator.engineLoad(KeyStoreDelegator.java: 225) at sun.security.provider.JavaKeyStore$DualFormatJKS.engineLoad( JavaKeyStore.java:70) at java.security.KeyStore.load(KeyStore.java:1445) at sun.security.ssl.TrustManagerFactoryImpl.getCacertsKeyStore( TrustManagerFactoryImpl.java:226) at sun.security.ssl. SSLContextImpl$DefaultSSLContext.getDefaultTrustManager(SSLContextImpl.java: 767) at sun.security.ssl.SSLContextImpl$DefaultSSLContext.<init>( SSLContextImpl.java:733) at sun.reflect.NativeConstructorAccessorImpl. newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl. newInstance(NativeConstructorAccessorImpl.java:62) at sun.reflect. DelegatingConstructorAccessorImpl.newInstance( DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor. newInstance(Constructor.java:422) at java.security.Provider$Service. newInstance(Provider.java:1595) ... 28 more