2015-12-03 10 views
6

Un'attività che funziona in modalità locale spark non funziona per cluster autonomi in esecuzione sulla stessa macchina.java.util.concurrent.RejectedExecutionException in Spark sebbene driver/client abbia esattamente la stessa versione del server

L'unica differenza è:

local[*] 

vs

spark://<host>.local:7077 

per il master

io sono in grado di eseguire pi greco scintilla contro il capitano all'indirizzo di cui sopra e anche usare la scintilla gui: quindi sta funzionando.

Ecco la (normale) scintilla codice init:

val sconf = new SparkConf().setMaster(master).setAppName("EpisCatalog") 
val sc = new SparkContext(sconf) 

Ecco l'StackTrace l'esecuzione del programma:

15/12/03 03:39:04.746 main WARN NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable 
15/12/03 03:39:07.706 main WARN MetricsSystem: Using default name DAGScheduler for source because spark.app.id is not set. 
15/12/03 03:39:27.739 appclient-registration-retry-thread ERROR SparkUncaughtExceptionHandler: Uncaught exception in thread Thread[appclient-registration-retry-thread,5,main] 
java.util.concurrent.RejectedExecutionException: Task [email protected] rejected from [email protected][Running, pool size = 1, active threads = 1, queued tasks = 0, completed tasks = 0] 
    at java.util.concurrent.ThreadPoolExecutor$AbortPolicy.rejectedExecution(ThreadPoolExecutor.java:2047) 
    at java.util.concurrent.ThreadPoolExecutor.reject(ThreadPoolExecutor.java:823) 
    at java.util.concurrent.ThreadPoolExecutor.execute(ThreadPoolExecutor.java:1369) 
    at java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:112) 
    at org.apache.spark.deploy.client.AppClient$ClientEndpoint$$anonfun$tryRegisterAllMasters$1.apply(AppClient.scala:103) 
    at org.apache.spark.deploy.client.AppClient$ClientEndpoint$$anonfun$tryRegisterAllMasters$1.apply(AppClient.scala:102) 
    at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:245) 
    at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:245) 
    at scala.collection.IndexedSeqOptimized$class.foreach(IndexedSeqOptimized.scala:33) 
    at scala.collection.mutable.ArrayOps$ofRef.foreach(ArrayOps.scala:186) 
    at scala.collection.TraversableLike$class.map(TraversableLike.scala:245) 
    at scala.collection.mutable.ArrayOps$ofRef.map(ArrayOps.scala:186) 
    at org.apache.spark.deploy.client.AppClient$ClientEndpoint.tryRegisterAllMasters(AppClient.scala:102) 
    at org.apache.spark.deploy.client.AppClient$ClientEndpoint.org$apache$spark$deploy$client$AppClient$ClientEndpoint$$registerWithMaster(AppClient.scala:128) 
    at org.apache.spark.deploy.client.AppClient$ClientEndpoint$$anon$2$$anonfun$run$1.apply$mcV$sp(AppClient.scala:139) 
    at org.apache.spark.util.Utils$.tryOrExit(Utils.scala:1130) 
    at org.apache.spark.deploy.client.AppClient$ClientEndpoint$$anon$2.run(AppClient.scala:131) 
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) 
    at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308) 
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180) 
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294) 
    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) 

Sono in esecuzione scintilla 1.6.0-SNAPSHOT. È stato "installato" sul repository locale di Maven e ho verificato che il client stia utilizzando l'ultima versione locale del repository Maven.

risposta

0

Ho avuto lo stesso problema e nel mio caso c'era la mancata corrispondenza della versione. Avevo Spark Driver scritto sulla versione 1.5.1 e l'installazione di Spark Cluster su 1.6.0.

Forse si distribuisce il cluster sulla versione stabile che era in quel momento 1.5.1.

+0

Incerta al momento. Terrò a mente. – javadba

2

Ho avuto lo stesso problema. Potrebbe essere risolto utilizzando l'url dell'host completo (reperibile sull'interfaccia utente Web master, porta 18080) anziché solo il nome host o l'host locale. Quindi ho dovuto usare mymachine.mycompany.org invece di mymachine

+0

Questo è stato risolto nell'OP: SparkPi sta lavorando usando fqdn e lo stesso fqdn 'machine.local' è usato nell'esecuzione di questa attività. Non è un problema dns. – javadba

Problemi correlati