星火流投掷java.net.ConnectException [英] Spark Streaming throwing java.net.ConnectException
问题描述
下面简单星火计划运行的精绝,如果我为SBT运行运行。但是,如果我运行,
1)为火花submit.cmd eventfilter组装-0.1-SNAPSHOT.jar
。其中使用SBT集结号与提供%与流和SQL的SBT规则创建的罐子。
2)火花submit.cmd --jar播放json_2.10-2.3.10.jar seventfilter_2.10-0.1-SNAPSHOT.jar
。
这两种情况下,它已经开始并等待新的文件来。没问题到现在。
但只要我开始把这些文件,以便它可以进行流式处理,下面来异常。
请注意:我使用的火花1.4.1彬hadoop2.6,
请注意:如果我通过SBT运行运行时,它运行平稳几个小时
请注意:我试着用1.5.2也通过相应改变SBT文件。该行为是一样的。
中止作业由于阶段故障:在第一阶段0.0迷失任务0.0(TID 0,为localhost):任务0级0.0失败1次,最近一次失败java.net.ConnectException : 连接超时:连接
在java.net.DualStackPlainSocketImpl.waitForConnect(本机方法)
在java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:85)
在java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
在java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
在java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
在java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172)
在java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
在java.net.Socket.connect(Socket.java:589)
在sun.net.NetworkClient.doConnect(NetworkClient.java:175)
在sun.net.www.http.HttpClient.openServer(HttpClient.java:432)
在sun.net.www.http.HttpClient.openServer(HttpClient.java:527)
在sun.net.www.http.HttpClient<&初始化GT;(HttpClient.java:211)
在sun.net.www.http.HttpClient.New(HttpClient.java:308)
在sun.net.www.http.HttpClient.New(HttpClient.java:326)
在sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:1168)
在sun.net.www.protocol.http.HttpURLConnection.plainConnect0(HttpURLConnection.java:1104)
在sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:998)
在sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:932)
在org.apache.spark.util.Utils $ .doFetchFile(Utils.scala:639)
在org.apache.spark.util.Utils $ .fetchFile(Utils.scala:453)
在org.apache.spark.executor.Executor$$anonfun$org$apache$spark$executor$Executor$$updateDependencies$5.apply(Executor.scala:398)
在org.apache.spark.executor.Executor$$anonfun$org$apache$spark$executor$Executor$$updateDependencies$5.apply(Executor.scala:390)
在scala.collection.TraversableLike $ WithFilter $$ anonfun $ $的foreach 1.适用(TraversableLike.scala:772)
在scala.collection.mutable.HashMap $$ anonfun $ $的foreach 1.适用(HashMap.scala:98)
在scala.collection.mutable.HashMap $$ anonfun $ $的foreach 1.适用(HashMap.scala:98)
在scala.collection.mutable.HashTable $ class.foreachEntry(HashTable.scala:226)
在scala.collection.mutable.HashMap.foreachEntry(HashMap.scala:39)
在scala.collection.mutable.HashMap.foreach(HashMap.scala:98)
在scala.collection.TraversableLike $ WithFilter.foreach(TraversableLike.scala:771)
在org.apache.spark.executor.Executor.org$apache$spark$executor$Executor$$updateDependencies(Executor.scala:390)
在org.apache.spark.executor.Executor $ TaskRunner.run(Executor.scala:193)
在java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
在java.util.concurrent.ThreadPoolExecutor中的$ Worker.run(ThreadPoolExecutor.java:617)
在java.lang.Thread.run(Thread.java:745)
驱动程序堆栈跟踪:
SBT文件
scalaVersion:=2.10.4
libraryDependencies + =org.apache.spark%%火花流%1.4.1
libraryDependencies + =org.apache.spark%%火花SQL%1.4.1
libraryDependencies + =com.typesafe.play%%玩JSON的%2.3.10
斯卡拉文件
高清主(参数:数组[字符串]){ VAL的conf =新SparkConf()
CONF
.setMaster(本地[*])//评论,如果通过执行火花提交
.setAppName(测试)
VAL SC =新SparkContext(CONF)
VAL SSC =新的StreamingContext(SC,秒(3)) VAL DSTREAM = ssc.textFileStream(目录)
VAL expandedEventStream = dStream.count()的print()
ssc.start()
ssc.awaitTermination()
}
我有virtuaBox设置和默认火花使用的IP查找应用程序罐子。禁用后,VirtualBox的IP地址火花开始正常工作。
Below simple spark program runs absolutely fine, if I run as "sbt run". But if i run,
1) As "spark-submit.cmd eventfilter-assembly-0.1-SNAPSHOT.jar
". where the jar is created using "sbt assembly" with "streaming and sql"'s sbt rule with "% provided".
2) As "spark-submit.cmd --jar play-json_2.10-2.3.10.jar seventfilter_2.10-0.1-SNAPSHOT.jar
".
Both cases, it is starting and waiting for new files to come. No problem till now.
But as soon as I start putting the files, so that it can be streamed, below exception comes.
Note: I am using spark-1.4.1-bin-hadoop2.6,
Note: If I run through "sbt run", it runs smooth for hours.
Note: I tried with 1.5.2 also, by changing sbt file accordingly. The behavior is same.
Job aborted due to stage failure: Task 0 in stage 0.0 failed 1 times, most recent failure: Lost task 0.0 in stage 0.0 (TID 0, localhost): java.net.ConnectException: Connection timed out: connect
at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)
at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:85)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
at java.net.Socket.connect(Socket.java:589)
at sun.net.NetworkClient.doConnect(NetworkClient.java:175)
at sun.net.www.http.HttpClient.openServer(HttpClient.java:432)
at sun.net.www.http.HttpClient.openServer(HttpClient.java:527)
at sun.net.www.http.HttpClient.<init>(HttpClient.java:211)
at sun.net.www.http.HttpClient.New(HttpClient.java:308)
at sun.net.www.http.HttpClient.New(HttpClient.java:326)
at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:1168)
at sun.net.www.protocol.http.HttpURLConnection.plainConnect0(HttpURLConnection.java:1104)
at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:998)
at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:932)
at org.apache.spark.util.Utils$.doFetchFile(Utils.scala:639)
at org.apache.spark.util.Utils$.fetchFile(Utils.scala:453)
at org.apache.spark.executor.Executor$$anonfun$org$apache$spark$executor$Executor$$updateDependencies$5.apply(Executor.scala:398)
at org.apache.spark.executor.Executor$$anonfun$org$apache$spark$executor$Executor$$updateDependencies$5.apply(Executor.scala:390)
at scala.collection.TraversableLike$WithFilter$$anonfun$foreach$1.apply(TraversableLike.scala:772)
at scala.collection.mutable.HashMap$$anonfun$foreach$1.apply(HashMap.scala:98)
at scala.collection.mutable.HashMap$$anonfun$foreach$1.apply(HashMap.scala:98)
at scala.collection.mutable.HashTable$class.foreachEntry(HashTable.scala:226)
at scala.collection.mutable.HashMap.foreachEntry(HashMap.scala:39)
at scala.collection.mutable.HashMap.foreach(HashMap.scala:98)
at scala.collection.TraversableLike$WithFilter.foreach(TraversableLike.scala:771)
at org.apache.spark.executor.Executor.org$apache$spark$executor$Executor$$updateDependencies(Executor.scala:390)
at org.apache.spark.executor.Executor$TaskRunner.run(Executor.scala:193)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Driver stacktrace:
sbt file
scalaVersion := "2.10.4"
libraryDependencies += "org.apache.spark" %% "spark-streaming" % "1.4.1"
libraryDependencies += "org.apache.spark" %% "spark-sql" % "1.4.1"
libraryDependencies += "com.typesafe.play" %% "play-json" % "2.3.10"
scala file
def main(args: Array[String]) {
val conf = new SparkConf()
conf
.setMaster("local[*]") //Comment if executing through spark-submit
.setAppName("test")
val sc = new SparkContext(conf)
val ssc = new StreamingContext(sc, Seconds(3))
val dStream = ssc.textFileStream("dir")
val expandedEventStream = dStream.count().print()
ssc.start()
ssc.awaitTermination()
}
I have virtuaBox setup and by default spark used that IP to find the application jar. After disabling the virtualBox IPs spark started working fine.
这篇关于星火流投掷java.net.ConnectException的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!