2017-03-23 14 views
0

データアクセスのためにSparkをスタンドアロンモード+ Alluxioで実行しています。具体的には、1 spark master & 1 spark workerがあります。java.io.IOException:フレームのサイズ[...]が最大長を超えています[...]!

私は、次のエラーを取得しています私の仕事を実行している:

17/03/22 14:35:43 WARN TaskSetManager: Lost task 0.0 in stage 0.0 (TID 0, 10.254.22.6): java.io.IOException: Frame size (67108864) larger than max length (16777216)! 
     at alluxio.AbstractClient.checkVersion(AbstractClient.java:112) 
     at alluxio.AbstractClient.connect(AbstractClient.java:175) 
     at alluxio.AbstractClient.retryRPC(AbstractClient.java:322) 
     at alluxio.client.file.FileSystemMasterClient.getStatus(FileSystemMasterClient.java:183) 
     at alluxio.client.file.BaseFileSystem.getStatus(BaseFileSystem.java:175) 
     at alluxio.client.file.BaseFileSystem.getStatus(BaseFileSystem.java:167) 
     at alluxio.hadoop.HdfsFileInputStream.<init>(HdfsFileInputStream.java:86) 
     at alluxio.hadoop.AbstractFileSystem.open(AbstractFileSystem.java:514) 
     at alluxio.hadoop.FileSystem.open(FileSystem.java:25) 
     at org.apache.hadoop.fs.FileSystem.open(FileSystem.java:766) 
     at net.atos.hadoop.ImageRecordReader.initialize(ImageRecordReader.java:47) 
     at org.apache.spark.rdd.NewHadoopRDD$$anon$1.<init>(NewHadoopRDD.scala:153) 
     at org.apache.spark.rdd.NewHadoopRDD.compute(NewHadoopRDD.scala:124) 
     at org.apache.spark.rdd.NewHadoopRDD.compute(NewHadoopRDD.scala:65) 
     at org.apache.spark.rdd.RDD.computeOrReadCheckpoint(RDD.scala:300) 
     at org.apache.spark.rdd.RDD.iterator(RDD.scala:264) 
     at org.apache.spark.rdd.MapPartitionsRDD.compute(MapPartitionsRDD.scala:38) 
     at org.apache.spark.rdd.RDD.computeOrReadCheckpoint(RDD.scala:300) 
     at org.apache.spark.CacheManager.getOrCompute(CacheManager.scala:69) 
     at org.apache.spark.rdd.RDD.iterator(RDD.scala:262) 
     at org.apache.spark.rdd.MapPartitionsRDD.compute(MapPartitionsRDD.scala:38) 
     at org.apache.spark.rdd.RDD.computeOrReadCheckpoint(RDD.scala:300) 
     at org.apache.spark.rdd.RDD.iterator(RDD.scala:264) 
     at org.apache.spark.rdd.MapPartitionsRDD.compute(MapPartitionsRDD.scala:38) 
     at org.apache.spark.rdd.RDD.computeOrReadCheckpoint(RDD.scala:300) 
     at org.apache.spark.rdd.RDD.iterator(RDD.scala:264) 
     at org.apache.spark.scheduler.ShuffleMapTask.runTask(ShuffleMapTask.scala:73) 
     at org.apache.spark.scheduler.ShuffleMapTask.runTask(ShuffleMapTask.scala:41) 
     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:1142) 
     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
     at java.lang.Thread.run(Thread.java:745) 

環境:

  • スパーク1.5.2
  • Alluxio 1.3.0

答えて

0

私はSPARK_WORKER_MEMORYを持っていましたマスターとワーカーの両方で2Gに設定します(環境として渡します)。 t変数、this section of the documentationを参照してください)。私は4Gに増やそうとしていました。しかし、私は作業員のパラメータを変更しました。私はそれがマスター&労働者の間の不一致を引き起こしたと思います。

両方のノードで同じ値(4G)に設定すると問題が解決しました。

関連する問題