虽然不知道为什么但是我可以解决这个bug

最近在调试gatk流程的时候,发现一个很有趣的问题,我使用gvcf模式的Variant Calling的代码如下:

bed=/home/yb77613/annotation/CCDS/human/exon_probe.GRCh38.gene.150bp.bed
# ftp://ftp.ncbi.nlm.nih.gov/snp/organisms/human_9606/VCF/All_20180418.vcf.gz
bam=${sample}_recal.bam
$gatk --java-options "-Xmx20G -Djava.io.tmpdir=./" HaplotypeCaller \
 -ERC GVCF -L $bed -R $GENOME -I $bam --dbsnp $DBSNP -O ${sample}_gatk.gvcf

是可以运行的,但是因为我的样本量比较大,几百个病人的肿瘤wes数据,需要提交到服务器,诡异的事情就发生了,同样的命令居然报错:

Error occurred during initialization of VM
Could not allocate metaspace: 1073741824 bytes

其次我怀疑是不是测试流程的服务器主节点的java和我提交的节点的java不一样,就which了一下,排除了这个原因。

那当然就得谷歌呀!关键词是:hpc Error occurred during initialization of VM gatk

有教程:https://github.com/marbl/canu/issues/1016 提到了 java的一些环境变量问题。可是我明明不记得自己修改过啊,而且服务器的运行节点和主节点不一致,那我很多其它任务也会受影响。

略微思考了一下,可能是 --java-options "-Xmx20G -Djava.io.tmpdir=./" 这个设置问题,删除之后,果然在运行节点和主节点都不会报错了。

Comments are closed.