当在 yarn 上运行 Spark 时,我总是看到退出代码和退出状态:
这里有一些:
CoarseGrainedExecutorBackend: RECEIVED SIGNAL 15: SIGTERM ...failed 2 times due to AM Container for application_1431523563856_0001_000002 exited with exitCode: 10... ...Exit status: 143. Diagnostics: Container killed on request ...Container exited with a non-zero exit code 52:... ...Container killed on request. Exit code is 137... exit code,exit status和SIGNAL之间的区别也很有用。但是我现在只是在随机猜测,似乎我周围的其他人都在使用spark。Exit status: -100. Diagnostics: Container released on a *lost* node
最佳答案
退出代码和状态或信号都不是Spark特定的,而是进程在类Unix系统上工作的一部分方式。
退出状态和退出代码
退出状态和退出代码是同一事物的不同名称。退出状态是介于0到255之间的数字,它指示进程终止后的结果。退出状态0通常表示成功。其他代码的含义取决于程序,应在程序的文档中进行说明。但是,有一些已建立的标准代码。有关详细列表,请参见this answer。
Spark使用的退出代码
在Spark sources中,我发现了以下内容
退出代码。它们的描述来自代码中的日志语句和注释,以及我对退出状态出现处的代码的理解。
Hive Thrift Server中的Spark SQL CLI驱动程序
stdout和stderr流时发生UnsupportedEncodingException时的。 spark.yarn.scheduler.reporterThread.maxFailures执行程序失败EXIT_SECURITY,但从未使用过The default state of
ApplicationMasteris failed if it is invoked by shut down hook. This behavior is different compared to 1.x version. If user application is exited ahead of time by callingSystem.exit(N), here mark this application as failed withEXIT_EARLY. For a good shutdown, user shouldn't callSystem.exit(0)to terminate the application.
--deploy-mode client)中,子主类是用户提交的应用程序类(--class CLASS)。在集群模式下(--deploy-mode cluster),子主类是特定于集群管理器的提交/客户端类。 System.exit()调用的数量设置为1或-1作为退出代码。就我而言,tell -1似乎用于指示缺少或不正确的命令行参数,而1则指示所有其他错误。SIGHUP)或终止自身(SIGKILL)。标准信号列表可以在signal(7) man page中的“标准信号”部分中找到。关于hadoop - 退出代码和退出状态是否意味着 Spark ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45428145/
我需要在客户计算机上运行Ruby应用程序。通常需要几天才能完成(复制大备份文件)。问题是如果启用sleep,它会中断应用程序。否则,计算机将持续运行数周,直到我下次访问为止。有什么方法可以防止执行期间休眠并让Windows在执行后休眠吗?欢迎任何疯狂的想法;-) 最佳答案 Here建议使用SetThreadExecutionStateWinAPI函数,使应用程序能够通知系统它正在使用中,从而防止系统在应用程序运行时进入休眠状态或关闭显示。像这样的东西:require'Win32API'ES_AWAYMODE_REQUIRED=0x0
给定这段代码defcreate@upgrades=User.update_all(["role=?","upgraded"],:id=>params[:upgrade])redirect_toadmin_upgrades_path,:notice=>"Successfullyupgradeduser."end我如何在该操作中实际验证它们是否已保存或未重定向到适当的页面和消息? 最佳答案 在Rails3中,update_all不返回任何有意义的信息,除了已更新的记录数(这可能取决于您的DBMS是否返回该信息)。http://ar.ru
如何在buildr项目中使用Ruby?我在很多不同的项目中使用过Ruby、JRuby、Java和Clojure。我目前正在使用我的标准Ruby开发一个模拟应用程序,我想尝试使用Clojure后端(我确实喜欢功能代码)以及JRubygui和测试套件。我还可以看到在未来的不同项目中使用Scala作为后端。我想我要为我的项目尝试一下buildr(http://buildr.apache.org/),但我注意到buildr似乎没有设置为在项目中使用JRuby代码本身!这看起来有点傻,因为该工具旨在统一通用的JVM语言并且是在ruby中构建的。除了将输出的jar包含在一个独特的、仅限ruby
在rails源中:https://github.com/rails/rails/blob/master/activesupport/lib/active_support/lazy_load_hooks.rb可以看到以下内容@load_hooks=Hash.new{|h,k|h[k]=[]}在IRB中,它只是初始化一个空哈希。和做有什么区别@load_hooks=Hash.new 最佳答案 查看rubydocumentationforHashnew→new_hashclicktotogglesourcenew(obj)→new_has
这个问题在这里已经有了答案:Checktoseeifanarrayisalreadysorted?(8个答案)关闭9年前。我只是想知道是否有办法检查数组是否在增加?这是我的解决方案,但我正在寻找更漂亮的方法:n=-1@arr.flatten.each{|e|returnfalseife
当我的预订模型通过rake任务在状态机上转换时,我试图找出如何跳过对ActiveRecord对象的特定实例的验证。我想在reservation.close时跳过所有验证!叫做。希望调用reservation.close!(:validate=>false)之类的东西。仅供引用,我们正在使用https://github.com/pluginaweek/state_machine用于状态机。这是我的预订模型的示例。classReservation["requested","negotiating","approved"])}state_machine:initial=>'requested
我有一个包含多个键的散列和一个字符串,该字符串不包含散列中的任何键或包含一个键。h={"k1"=>"v1","k2"=>"v2","k3"=>"v3"}s="thisisanexamplestringthatmightoccurwithakeysomewhereinthestringk1(withspecialcharacterslike(^&*$#@!^&&*))"检查s是否包含h中的任何键的最佳方法是什么,如果包含,则返回它包含的键的值?例如,对于上面的h和s的例子,输出应该是v1。编辑:只有字符串是用户定义的。哈希将始终相同。 最佳答案
我需要检查DateTime是否采用有效的ISO8601格式。喜欢:#iso8601?我检查了ruby是否有特定方法,但没有找到。目前我正在使用date.iso8601==date来检查这个。有什么好的方法吗?编辑解释我的环境,并改变问题的范围。因此,我的项目将使用jsapiFullCalendar,这就是我需要iso8601字符串格式的原因。我想知道更好或正确的方法是什么,以正确的格式将日期保存在数据库中,或者让ActiveRecord完成它们的工作并在我需要时间信息时对其进行操作。 最佳答案 我不太明白你的问题。我假设您想检查
我的日期格式如下:"%d-%m-%Y"(例如,今天的日期为07-09-2015),我想看看是不是在过去的七天内。谁能推荐一种方法? 最佳答案 你可以这样做:require"date"Date.today-7 关于ruby-检查日期是否在过去7天内,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/32438063/
这里有一个很好的答案解释了如何在Ruby中下载文件而不将其加载到内存中:https://stackoverflow.com/a/29743394/4852737require'open-uri'download=open('http://example.com/image.png')IO.copy_stream(download,'~/image.png')我如何验证下载文件的IO.copy_stream调用是否真的成功——这意味着下载的文件与我打算下载的文件完全相同,而不是下载一半的损坏文件?documentation说IO.copy_stream返回它复制的字节数,但是当我还没有下