日前,以nextdenovo v2.5.0 版本进行ONT数据组装,最近集群任务比较多,nextdenovo 在02.cns_align的时候,耗时间比较久。等到我日常检查任务完成情况时,发现这步已经done,但是qstat显示还有一个任务在r,内心感觉不妙,随后后面显示segmentation fault 报错,单节点nohup依然报错。
解决方法:github找类似问题,查看回答。
发现问题https://github.com/Nextomics/NextDenovo/issues/113中是一步步利用 cns.filt.dovt.ovl结果进行核查只任务完成与否,于是进行子任务核查。其中,01.ctg_graph.input.ovls和01.ctg_graph.input.seqs都是1个list,01.ctg_graph.input.seqs是输入的发,所以肯定不会报错。于是测试将01.ctg_graph.input.ovls中涉及的子任务一个个写出来,依次进行 nextDenovo.sh投递,提高minimap2的线程,加快速度,单节点重投该任务,最终发现最后一个任务异常。
$cd /share/nas1/pengzw/DZH/DZH-36710/01.assemble/01.nextdenovo/01.rundir/03.ctg_graph/01.ctg_graph.sh.work/ctg_graph1 && cat nextDenovo.sh
#!/bin/bash
set -xve
hostname
cd /share/nas1/pengzw/DZH/DZH-36710/01.assemble/01.nextdenovo/01.rundir/03.ctg_graph/01.ctg_graph.sh.work/ctg_graph1
time /share/nas1/yangp/01.software/NextDenovo/bin/nextgraph -a 1 -f /share/nas1/pengzw/DZH/DZH-36710/01.assemble/01.nextdenovo/./01.rundir/03.ctg_graph/01.ctg_graph.input.seqs /share/nas1/pengzw/DZH/DZH-36710/01.assemble/01.nextdenovo/./01.rundir/03.ctg_graph/01.ctg_graph.input.ovls -o nd.asm.p.fasta;
touch /share/nas1/pengzw/DZH/DZH-36710/01.assemble/01.nextdenovo/01.rundir/03.ctg_graph/01.ctg_graph.sh.work/ctg_graph1/nextDenovo.sh.done
$cd /share/nas1/pengzw/DZH/DZH-36710/01.assemble/01.nextdenovo/01.rundir/03.ctg_graph && cat 01.ctg_graph.input.ovls
/share/nas1/pengzw/DZH/DZH-36710/01.assemble/01.nextdenovo/01.rundir/02.cns_align/02.cns_align.sh.work/cns_align1/cns.filt.dovt.ovl
/share/nas1/pengzw/DZH/DZH-36710/01.assemble/01.nextdenovo/01.rundir/02.cns_align/02.cns_align.sh.work/cns_align2/cns.filt.dovt.ovl
/share/nas1/pengzw/DZH/DZH-36710/01.assemble/01.nextdenovo/01.rundir/02.cns_align/02.cns_align.sh.work/cns_align3/cns.filt.dovt.ovl
/share/nas1/pengzw/DZH/DZH-36710/01.assemble/01.nextdenovo/01.rundir/02.cns_align/02.cns_align.sh.work/cns_align4/cns.filt.dovt.ovl
/share/nas1/pengzw/DZH/DZH-36710/01.assemble/01.nextdenovo/01.rundir/02.cns_align/02.cns_align.sh.work/cns_align5/cns.filt.dovt.ovl
/share/nas1/pengzw/DZH/DZH-36710/01.assemble/01.nextdenovo/01.rundir/02.cns_align/02.cns_align.sh.work/cns_align6/cns.filt.dovt.ovl
$cat 01.ctg_graph.input.seqs
/share/nas1/pengzw/DZH/DZH-36710/01.assemble/01.nextdenovo/01.rundir/02.cns_align/01.seed_cns.sh.work/seed_cns1/cns.fasta
/share/nas1/pengzw/DZH/DZH-36710/01.assemble/01.nextdenovo/01.rundir/02.cns_align/01.seed_cns.sh.work/seed_cns2/cns.fasta
/share/nas1/pengzw/DZH/DZH-36710/01.assemble/01.nextdenovo/01.rundir/02.cns_align/01.seed_cns.sh.work/seed_cns3/cns.fasta
image.png
尝试结果:异常处理前的结果移动备份到bak,再进行比较(手不要太快删除。)
$cd /share/nas1/pengzw/DZH/DZH-36710/01.assemble/01.nextdenovo/01.rundir/02.cns_align/02.cns_align.sh.work/cns_align6
$ll
-rw-r--r-- 1 pengzw bmk 22185642 Apr 22 01:48 cns.filt.dovt.ovl #二进制文件,第二次的结果
-rw-r--r-- 1 pengzw bmk 22185642 Apr 19 19:09 cns.filt.dovt.ovl.bak #备份第一次的结果。
-rw-r--r-- 1 pengzw bmk 2436756 Apr 22 01:48 cns.filt.dovt.ovl.bl
-rw-r--r-- 1 pengzw bmk 2436756 Apr 19 19:09 cns.filt.dovt.ovl.bl.bak
-rwxr--r-- 1 pengzw bmk 688 Apr 21 21:21 nextDenovo.sh
-rw-r--r-- 1 pengzw bmk 0 Apr 22 01:48 nextDenovo.sh.done
-rw-r--r-- 1 pengzw bmk 5355 Apr 19 19:09 nextDenovo.sh.e
-rw-r--r-- 1 pengzw bmk 40 Apr 18 22:03 nextDenovo.sh.o
-rw------- 1 pengzw bmk 2701 Apr 22 01:48 nohup.out
尝试结果比较:比较文件不同。重新生成的文件,看起来文件大小一样,但是cmp显示不一致,所以肯定是这个任务异常,最后问题解决。
diff 文本文件
cmp 比较二进制文件
$cmp cns.filt.dovt.ovl cns.filt.dovt.ovl.bak
cns.filt.dovt.ovl cns.filt.dovt.ovl.bak differ: byte 19390465, line 69596
$cmp cns.filt.dovt.ovl.bl cns.filt.dovt.ovl.bl.bak
续跑:直接重投主流程,几分钟后顺利出结果。
跑任务不顺利的时候记住排除法找异常,并且还要调节线程,快速出结果。我不会说我还有1个跑了一个月住还没出结果,因为我没有仔细看sh,坑自己了。
网友评论