为了账号安全,请及时绑定邮箱和手机立即绑定

Spark报错解决:java.lang.OutOfMemory, unable to create new native thread

标签:
Spark

报错

java.lang.OutOfMemory, unable to create new native thread
Caused by: java.lang.OutOfMemoryError: unable to create new native thread
at java.lang.Thread.start0(Native Method)
at java.lang.Thread.start(Thread.java:640)

原因

上面这段错误提示的问题是Linux操作系统无法创建更多进程,导致出错,并不是系统的内存不足。因此要解决这个问题需要修改Linux允许创建更多的进程,就需要修改Linux最大进程数。

$ ulimit -a
临时修改允许打开的最大进程数
$ ulimit -u 65535
临时修改允许打开的文件句柄
$ ulimit -n 65535
永久修改Linux最大进程数量

$ vim /etc/security/limits.d/90-nproc.conf

root       soft    nproc     unlimited
* soft nofile 65536
* hard nofile 65536
* soft nproc 65536
* hard nproc 65536
* soft memlock -1
* hard memlock -1
使用 su - <user> 切换到普通用户ulimit -a 查看修改是否成功

我自己修改完文件,重启了才没报错

永久修改用户打开文件的最大句柄数,该值默认1024,一般都会不够,常见错误就是not open file

$ vim /etc/security/limits.conf
bdata  soft    nofile  65536
bdata  hard    nofile  65536



作者:祗談風月
链接:https://www.jianshu.com/p/10bea1006477


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
移动开发工程师
手记
粉丝
46
获赞与收藏
144

关注作者,订阅最新文章

阅读免费教程

  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消