You are viewing a plain text version of this content. The canonical link for it is here.
Posted to reviews@spark.apache.org by pauloangelo <gi...@git.apache.org> on 2015/10/11 20:21:40 UTC

[GitHub] spark pull request: [SPARK-2251] fix concurrency issues in random ...

Github user pauloangelo commented on the pull request:

    https://github.com/apache/spark/pull/1229#issuecomment-147232717
  
    Hi all,
    
    I'm getting similar problem using kmeans clustering with Spark-1.5.1. The stacktrace is below.
    
    To overcome the problem, I'm setting runs=1, which is not good, because the job is not executed in parallel.
    
    ```
     kmeans.setRuns(1)
    ```
    
    Any clue?
    
    Thank you in advance.
    
    ```
    Driver stacktrace:
    org.apache.spark.SparkException: Job aborted due to stage failure: Task 2 in stage 5.0 failed 4 times, most recent failure: Lost task 2.3 in stage 5.0 (TID 18, combate): org.apache.spark.SparkException: Can only zip RDDs with same number of elements in each partition
    	at org.apache.spark.rdd.RDD$$anonfun$zip$1$$anonfun$apply$27$$anon$1.hasNext(RDD.scala:832)
    	at scala.collection.Iterator$$anon$11.hasNext(Iterator.scala:327)
    	at org.apache.spark.util.Utils$.getIteratorSize(Utils.scala:1553)
    	at org.apache.spark.rdd.RDD$$anonfun$count$1.apply(RDD.scala:1121)
    	at org.apache.spark.rdd.RDD$$anonfun$count$1.apply(RDD.scala:1121)
    	at org.apache.spark.SparkContext$$anonfun$runJob$5.apply(SparkContext.scala:1848)
    	at org.apache.spark.SparkContext$$anonfun$runJob$5.apply(SparkContext.scala:1848)
    	at org.apache.spark.scheduler.ResultTask.runTask(ResultTask.scala:66)
    	at org.apache.spark.scheduler.Task.run(Task.scala:88)
    	at org.apache.spark.executor.Executor$TaskRunner.run(Executor.scala:214)
    	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    	at java.lang.Thread.run(Thread.java:745)
    
    Driver stacktrace:
    	at org.apache.spark.scheduler.DAGScheduler.org$apache$spark$scheduler$DAGScheduler$$failJobAndIndependentStages(DAGScheduler.scala:1283)
    	at org.apache.spark.scheduler.DAGScheduler$$anonfun$abortStage$1.apply(DAGScheduler.scala:1271)
    	at org.apache.spark.scheduler.DAGScheduler$$anonfun$abortStage$1.apply(DAGScheduler.scala:1270)
    	at scala.collection.mutable.ResizableArray$class.foreach(ResizableArray.scala:59)
    	at scala.collection.mutable.ArrayBuffer.foreach(ArrayBuffer.scala:47)
    	at org.apache.spark.scheduler.DAGScheduler.abortStage(DAGScheduler.scala:1270)
    	at org.apache.spark.scheduler.DAGScheduler$$anonfun$handleTaskSetFailed$1.apply(DAGScheduler.scala:697)
    	at org.apache.spark.scheduler.DAGScheduler$$anonfun$handleTaskSetFailed$1.apply(DAGScheduler.scala:697)
    	at scala.Option.foreach(Option.scala:236)
    	at org.apache.spark.scheduler.DAGScheduler.handleTaskSetFailed(DAGScheduler.scala:697)
    	at org.apache.spark.scheduler.DAGSchedulerEventProcessLoop.doOnReceive(DAGScheduler.scala:1496)
    	at org.apache.spark.scheduler.DAGSchedulerEventProcessLoop.onReceive(DAGScheduler.scala:1458)
    	at org.apache.spark.scheduler.DAGSchedulerEventProcessLoop.onReceive(DAGScheduler.scala:1447)
    	at org.apache.spark.util.EventLoop$$anon$1.run(EventLoop.scala:48)
    	at org.apache.spark.scheduler.DAGScheduler.runJob(DAGScheduler.scala:567)
    	at org.apache.spark.SparkContext.runJob(SparkContext.scala:1822)
    	at org.apache.spark.SparkContext.runJob(SparkContext.scala:1835)
    	at org.apache.spark.SparkContext.runJob(SparkContext.scala:1848)
    	at org.apache.spark.SparkContext.runJob(SparkContext.scala:1919)
    	at org.apache.spark.rdd.RDD.count(RDD.scala:1121)
    	at org.apache.spark.rdd.RDD.takeSample(RDD.scala:485)
    	at org.apache.spark.mllib.clustering.KMeans.initKMeansParallel(KMeans.scala:376)
    	at org.apache.spark.mllib.clustering.KMeans.runAlgorithm(KMeans.scala:249)
    	at org.apache.spark.mllib.clustering.KMeans.run(KMeans.scala:213)
    	at org.hogzilla.dns.HogDNS$.kmeans(HogDNS.scala:194)
    	at org.hogzilla.dns.HogDNS$.run(HogDNS.scala:73)
    	at Hogzilla$.main(Hogzilla.scala:47)
    	at Hogzilla.main(Hogzilla.scala)
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    	at java.lang.reflect.Method.invoke(Method.java:606)
    	at org.apache.spark.deploy.yarn.ApplicationMaster$$anon$2.run(ApplicationMaster.scala:525)
    ```
    
    Some good links are:
    https://github.com/apache/spark/blob/f0f563a3c43fc9683e6920890cce44611c0c5f4b/mllib/src/main/scala/org/apache/spark/mllib/clustering/KMeans.scala#L376
    
    https://github.com/apache/spark/blob/f0f563a3c43fc9683e6920890cce44611c0c5f4b/core/src/main/scala/org/apache/spark/rdd/RDD.scala#L473


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org