ARM环境python pipeline运行报139错误码规避方案
问题
在TaiShan服务器上,使用python插件的pipeline报错显示139错误。具体报错如下:
subprocess exited with status 139
回答
该python程序既使用了libcrypto.so,也使用了libssl.so。而一旦LD_LIBRARY_PATH添加了hadoop的native库目录,则使用的就是hadoop native库中的libcrypto.so,而使用系统自带的libssl.so(因为hadoop native目录没有带该包) 。由于这两个库版本不匹配,导致了python文件运行时出现段错误。
解决方案
方案一:
修改Spark2x客户端conf目录下spark-default.conf文件,清空(直接赋值为空) 配置项spark.driver.extraLibraryPath、spark.yarn.cluster.driver.extraLibraryPath和spark.executor.extraLibraryPath的值。
方案二:
在FusionInsight Mnanager中Spark2x界面中修改上述三个参数然后重启Spark2x实例之后重新下载客户端,具体步骤如下: