将自定义退出代码从纱线集群模式 Spark 传递到 CLI

2024-01-26

我通过spark-submit启动了纱线集群模式spark作业。 为了指示部分失败等,我想将退出代码从驱动程序传递到调用spark-submit的脚本。

我尝试了 System.exit 和在驱动程序中抛出 SparkUserAppException,但在这两种情况下 CLI 都只得到 1,而不是我传递的退出代码。

我认为不可能传递自定义退出代码,因为驱动程序传递的任何退出代码都将转换为纱线状态,并且纱线会将任何失败的退出代码转换为 1 或失败。


通过查看 Spark 代码,我可以得出这样的结论:

有可能在client模式。看着runMain()的方法火花提交 https://github.com/apache/spark/blob/master/core/src/main/scala/org/apache/spark/deploy/SparkSubmit.scala#L648 class

而在cluster模式下,无法获取驱动程序的退出状态,因为您的驱动程序类将在执行程序之一中运行。

有一个可能/可能不合适的替代解决方案对于您的用例:

使用端点托管 REST API,以从驱动程序代码接收状态更新。如果出现任何异常,请让您的驱动程序代码使用此端点来更新状态。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将自定义退出代码从纱线集群模式 Spark 传递到 CLI 的相关文章

随机推荐

  • 使用额外信息进行 Bean 验证

    我正在尝试创建一个UniqueName注释作为创建项目 api 的 cutomize bean 验证注释 PostMapping users userId projects public ResponseEntity createNewPr
  • 使用 ASP.NET 在 Windows Azure Blob 存储上设置 CORS

    我正在尝试在我的 Windows Azure blob 存储帐户上设置 CORS 属性 我正在使用 ASP NET 服务器发送 PUT 请求 服务器正在发回禁止响应 表示 服务器无法验证请求 确保授权标头的值格式正确 包括签名 所以它一定是
  • Kotlin Gradle 插件:apiVersion 与 languageVersion

    Kotlin Gradle 插件包含compileKotlin可以通过以下方式配置的任务apiVersion and languageVersion参数 doc https kotlinlang org docs reference usi
  • 使用flywaydb时如何对存储过程进行版本控制?

    我目前有一个使用 Microsoft SQL Server 后端的 Java Web 应用程序 数据库迁移当前由 sqlcmd 手动完成 它使用 r 命令来引用存储过程和视图的脚本文件 这样 每个存储过程都有自己的文件 proc somep
  • gwan 不重新编译 java 文件

    我针对 Ubuntu 12 04 服务器上运行的 gwan 服务器附带的标准 hello java 和 hello c 进行了测试 G WAN 4 3 1 64 位 2013 年 3 月 1 日 17 36 39 一旦我用gwan运行 须藤
  • SQL日期查询包括月份,即使没有数据

    我有一个预订数据库 其中包含每次预订的不同日期 我想获得每个月所有预订的计数 例如 JAN 12 FEB 15 MAR 53 APR 25 如果我一个月内的预订量为零 我怎样才能获得列出的月份 例如 JAN 12 FEB 15 MAR 53
  • Sqlite 3 与 NSCoding 协议

    哪个对于存储缓存数据更有效 我看到 Mac 版 Twitter 将大量信息存储在 sqlite 文件中 一些应用程序实现 NSCoding 协议 两者相比是否有任何优势 两者截然不同 SQLite 是一个关系数据库 周围的东西NSCodin
  • XSL:如何比较两个日期?

    我有一个像这样的xml
  • 如何使用 xcode 3.2.5 将应用程序提交到 mac 应用商店

    好吧 我用 Xcode 3 2 5 开发了一个 mac 应用程序 我也从 mac 应用商店创建了证书和规定 但问题是 provisionprofile 没有安装在 Xcode 中 我使用的是 Xcode 3 2 5 我可以不提交 mac 应
  • 纱线中最接近“npm ci”的是什么

    在npm中 有一个ci用于以干净状态安装项目的命令 在文档中 据称 https docs npmjs com cli ci that 通过跳过 它可以比常规 npm 安装快得多 某些面向用户的功能 也比常规的更加严格 安装 这可以帮助捕获由
  • Cython 中的 abs(双复合体)

    如何获得 a 的绝对值double complex多变的 def f cdef double complex aaa 1 2j cdef double bbb abs aaa 第二个作业以黄色突出显示cython ahtml输出 aaa在应
  • 向 SMTP 电子邮件正文添加多行 VB.NET

    我可以使用此代码在我的 Exchange 服务器上发送电子邮件 Try Dim SmtpServer As New SmtpClient Dim mail As New MailMessage SmtpServer Credentials
  • WooCommerce 以编程方式/通过函数创建帐户

    无论如何 是否可以像使用 WordPress 用户一样以编程方式创建客户 显然 WooCommerce 用户共享一些相同的 WordPress 用户字段 还需要设置其他内容 例如帐单 邮政地址 以前有人实现过这个吗 我在其网站上的 WooC
  • JavaScript:按需加载 jQuery

    将 jQuery 库动态包含到页面中的最轻量级方法是什么 我正在开发一个页面 有时它运行一些自定义脚本 10 行 有时还需要整个 jquery 只需在需要时为 jQuery 添加一个脚本标签即可 var script document cr
  • 如何拦截 JTA 事务事件并获取对与事务关联的当前 EntityManager 的引用

    长话短说 我们开发和维护一个可以在使用 JavaEE7 CDI JPA 的其他项目中使用的库 应用程序将在 Glassfish 4 0 下运行 并使用 Hibernate 的 JPA 实现来实现底层 PostgreSQL 持久性 这是长期迁
  • 引用单元格的父tableView

    有没有办法从 tableview 的单元格引用父 tableView Thanks 您可以将此方法添加到 UITableViewCell 的自定义子类中 id parentTableView UIView v self superview
  • Python Tkinter 线程 - 当用户关闭 GUI 时如何结束/终止/停止线程

    如果我有一个与 tkinter 一起运行的非 for 循环线程任务 例如time sleep seconds 我怎样才能在任务结束之前或之前安全地结束任务time sleep 结束了 如果运行该程序并单击按钮 然后关闭 GUI 窗口fini
  • 如何彻底去除wpf中的按钮边框?

    我正在尝试创建一个其中包含图像且没有边框的按钮 就像 Firefox 工具栏按钮一样 然后将鼠标悬停在它们上方并查看完整的按钮 我尝试过设置BorderBrush to Transparent BorderThickness to 0 并且
  • 无法将中文字符写入文件名

    public static void main String args throws IOException Scanner in new Scanner System in String fileName in nextLine Writ
  • 将自定义退出代码从纱线集群模式 Spark 传递到 CLI

    我通过spark submit启动了纱线集群模式spark作业 为了指示部分失败等 我想将退出代码从驱动程序传递到调用spark submit的脚本 我尝试了 System exit 和在驱动程序中抛出 SparkUserAppExcept