在单机模式下执行成功的spark程序,在yarn上面就报错。异常信息如下:

 // :: INFO DAGScheduler: Completed ResultTask(, )
// :: INFO DAGScheduler: Stage (saveAsTextFile at FileUtil.scala:) finished in 0.179 s
// :: INFO SparkContext: Job finished: saveAsTextFile at FileUtil.scala:, took 0.331739293 s
// :: INFO TaskSetManager: Finished TID in ms on localhost (progress: /)
// :: INFO TaskSchedulerImpl: Removed TaskSet 2.0, whose tasks have all completed, from pool
// :: INFO ApplicationMaster: finishApplicationMaster with SUCCEEDED
Exception in thread "main" java.lang.AssertionError: assertion failed
at scala.Predef$.assert(Predef.scala:)
at org.apache.spark.deploy.yarn.ApplicationMaster.waitForSparkContextInitialized(ApplicationMaster.scala:)
at org.apache.spark.deploy.yarn.ApplicationMaster.run(ApplicationMaster.scala:)
at org.apache.spark.deploy.yarn.ApplicationMaster$$anonfun$main$.apply$mcV$sp(ApplicationMaster.scala:)
at org.apache.spark.deploy.SparkHadoopUtil$$anon$.run(SparkHadoopUtil.scala:)
at org.apache.spark.deploy.SparkHadoopUtil$$anon$.run(SparkHadoopUtil.scala:)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:)
at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:)
at org.apache.spark.deploy.SparkHadoopUtil.runAsSparkUser(SparkHadoopUtil.scala:)
at org.apache.spark.deploy.yarn.ApplicationMaster$.main(ApplicationMaster.scala:)
at org.apache.spark.deploy.yarn.ApplicationMaster.main(ApplicationMaster.scala)
// :: INFO ApplicationMaster: AppMaster received a signal.
// :: INFO ApplicationMaster: Deleting staging directory .sparkStaging/application_1408004797389_0007

从日志上面分析,job执行成功了。但貌似是没有获取到yarn返回的结果信息。

debug后发现是下面的问题:

spark-submit --class org.andy.hadoop.ETL --master yarn-cluster  ../lib/rdbms-0.0.-SNAPSHOT-jar-with-dependencies.jar /dest/ETL2

job以yarn-cluster形式执行,但代码中初始化的为:

  var conf = new SparkConf().setAppName("testFilter").setMaster("local")
var sc = new SparkContext(conf)

以local的形式初始化的。所以接收不到yarn的返回结果。修改后:

     var conf = new SparkConf().setAppName("testFilter").setMaster("yarn-cluster")
var sc = new SparkContext(conf)

执行成功!

spark在yarn-cluster上面执行报错的更多相关文章

  1. 执行Spark运行在yarn上的命令报错 spark-shell --master yarn-client

    1.执行Spark运行在yarn上的命令报错 spark-shell --master yarn-client,错误如下所示: // :: ERROR SparkContext: Error init ...

  2. Spark On Yarn Cluster生产环境下JVM的OOM和Stack Overflow问题

    1.Spark on Yarn下JVM的OOM问题及解决方式 2.Spark中Driver的Stack Overflow的问题及解决方式 Spark on Yarn cluster mode: 此时有 ...

  3. oracle创建包后执行报错:object omgmig.test_package is invalid.

    今天学习了一下oracle的包的写法,然后碰到这么个问题.包声明和包主体都正确,但是就是执行报错:object omgmig.test_package is invalid. 这是会报错的sql,看起 ...

  4. salt执行报错一例

    执行报错: 查看服务端日志: 认证有问题 重新认证吧!!! minion端: [root@super66 ~]# cd /etc/salt/[root@super66 salt]# lsminion ...

  5. Ubuntu下sh *.sh使用==操作符执行报错

    ----<鸟哥的Linux私房菜--基础篇>学习笔记 ubuntu默认的sh是连接到dash,而我们写shell脚本时使用的时bash.bash和dash在一些方面是不兼容的.因此执行同一 ...

  6. windows中修改catalina.sh上传到linux执行报错This file is needed to run this program解决

    windows中修改catalina.sh上传到linux执行报错This file is needed to run this program解决 一.发现问题 由于tomcat内存溢出,在wind ...

  7. apscheduler 执行报错No handlers could be found for logger "apscheduler.executors.default

    执行报错如下: No handlers could be found for logger "apscheduler.executors.default 解决: 加入日志,查看具体报错,载根 ...

  8. SQL server 维护计划中 “清除维护任务” 执行报错

    SQL server 维护计划中 “清除维护任务” 执行报错,错误如下: 执行查询“EXECUTE master.dbo.xp_delete_file 0,N'',N'',N'2019...”失败,错 ...

  9. scala的trait执行报错: 错误: 找不到或无法加载主类 cn.itcast.scala.`trait`

    scala的trait执行报错: 错误: 找不到或无法加载主类 cn.itcast.scala.`trait`.Children 原因:包名写成了trait,与trait关键字重名了: package ...

随机推荐

  1. vscode - emmet失效?

    把emmet设置覆盖为用户.

  2. vue笔记四

    十一.过渡与动画 1.使用限制Vue 提供了 transition 的封装组件,在下列情形中,可以给任何元素和组件添加 entering/leaving 过渡条件渲染 (使用 v-if)条件展示 (使 ...

  3. Linux非阻塞IO(三)非阻塞IO中缓冲区Buffer的实现

    本文我们来实现回射服务器的Buffer.   Buffer的实现   上节提到了非阻塞IO必须具备Buffer.再次将Buffer的设计描述一下: 这里必须补充一点,writeIndex指向空闲空间的 ...

  4. 借助backtrace和demangle实现异常类Exception

    C++的异常类是没有栈痕迹的,如果需要获取栈痕迹,需要使用以下函数: #include <execinfo.h> int backtrace(void **buffer, int size ...

  5. Python列表切成多个/生成多个空列表

    li = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18] #arr是被分割的list,n是每个chunk中含n元素. def chunks(arr, n) ...

  6. vue 的 起手式

    代码: vue.js // vue 起手势 (function(root,factory) { root.Vue = factory(); })(this,function(){ // 设置基础的默认 ...

  7. JavaScript对象this指向(普通键this指向 非指向函数的键)

    1.结论 JavaScript对象普通键(非指向函数的键)this指向是window. 2.示例 <!DOCTYPE html> <html lang="zh"& ...

  8. Archlinux风扇设置

    在笔记本(ThinkPad T440)连续两天因过热而死机后, 对内核的风扇控制算法果断失去信心. 风扇的用户层控制接口是 /proc/acpi/ibm/fan, 但为防止用户控制不当烧坏机器, 默认 ...

  9. C#中的里氏替换原则

    里氏转换原则 子类可以赋值给父类对象 父类对象可以强制转化为对应的子类对象 里氏替换原则直观理解就是"子类是父类",反过来就说不通了. 就像男人是人对的,但人是男人就不对了. 这样 ...

  10. 微软同步发行Windows 10和Windows 10 Mobile系统更新

    微软今天同步公布了新的 Windows 10 Redstone PC 和 Windows 10 Mobile 预览版. PC 版本是 Build 14271.Mobile 版本是 Build 1426 ...