Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
hail.utils.java.FatalError:IllegalStateException:未读块数据_Java_Apache Spark_Master Slave_Hail - Fatal编程技术网

hail.utils.java.FatalError:IllegalStateException:未读块数据

hail.utils.java.FatalError:IllegalStateException:未读块数据,java,apache-spark,master-slave,hail,Java,Apache Spark,Master Slave,Hail,我试图在spark cluster上运行一个基本脚本,它接收一个文件,转换它并以不同的格式输出。目前,spark群集由运行在同一节点上的1个主节点和1个从节点组成。完整命令是: nohup spark-submit --master spark://tr-nodedev1:7077 --verbose --conf spark.driver.port=40065 --driver-memory 4g --conf spark.driver.extraClassPath=/opt/seqr/.co

我试图在spark cluster上运行一个基本脚本,它接收一个文件,转换它并以不同的格式输出。目前,spark群集由运行在同一节点上的1个主节点和1个从节点组成。完整命令是:

nohup spark-submit --master spark://tr-nodedev1:7077 --verbose --conf spark.driver.port=40065 --driver-memory 4g --conf spark.driver.extraClassPath=/opt/seqr/.conda/envs/py37/lib/python3.7/site-packages/hail/hail-all-spark.jar
--conf spark.executor.extraClassPath=./hail-all-spark.jar ./hail_scripts/v02/convert_vcf_to_hail.py /clinvar_37.vcf -ht
--genome-version 37 --output /seqr-reference-hail2/clinvar_37.ht &
它给出了一个错误:

hail.utils.java.FatalError:IllegalStateException:未读块数据

更详细的堆栈跟踪可以在另一个论坛上找到,我在那里问了同样的问题:

这样的命令很有效:

nohup spark-submit --conf spark.driver.extraClassPath=/opt/seqr/.conda/envs/py37/lib/python3.7/site-packages/hail/hail-all-spark.jar 
--conf spark.executor.extraClassPath=./hail-all-spark.jar ./hail_scripts/v02/convert_vcf_to_hail.py /hgmd_pro_2019.3_hg19_noDB.vcf -ht 
--genome-version 37 --output /seqr-reference-hail2/hgmd_2019.3_hg19_noDB.ht &
因此,在本地模式下,它运行良好,但在独立模式下则不行。因此,我想这是主从不同设置的问题,可能是
JAVA
。但是,在
spark env.sh
中设置它们如下:

导出JAVA_HOME=/usr/lib/jvm/JAVA

export SPARK\u JAVA\u OPTS+=“-Djava.library.path=$SPARK\u library\u path:$JAVA\u HOME”


没有解决问题。要启动master+slave,我只需使用
start all.sh
script。如果您有任何建议,我们将不胜感激。

好的,我们修复了它,解决方案是在运行脚本的命令中添加以下设置:

–jars /opt/seqr/.conda/envs/py37/lib/python3.7/site-packages/hail/hail-all-spark.jar
因此,工作命令如下所示:

spark-submit --master spark://ai-grisnodedev1:7077 --verbose --conf spark.driver.port=40065 --driver-memory 4g --conf spark.driver.extraClassPath=/opt/seqr/.conda/envs/py37/lib/python3.7/site-packages/hail/hail-all-spark.jar --conf spark.executor.extraClassPath=./hail-all-spark.jar --jars /opt/seqr/.conda/envs/py37/lib/python3.7/site-packages/hail/hail-all-spark.jar test_hail.py
对于未来的Hail 0.2用户,可能需要知道需要指定这个--jars参数,并且它应该指向Hail-all-spark.jar