I did UpdateVcfSequenceDictionary for dbsnp VCF file and updated the dbsnp contigs based on hg38 reference file. In the dbsnp VCF header I see the ##contig lines. However, I still have the error in CollectVariantCallingMetrics. What other solutions can help solve this issue?
Hello, I am trying to get metrics table for a GVCF file using CollectVariantCallingMetrics and I am getting the following error message at the end of run and does not generate metrics table. I was wondering how can I solve this issue.
[Thu Feb 29 16:50:50 EST 2024] picard.vcf.CollectVariantCallingMetrics done. Elapsed time: 3.42 minutes. Runtime.totalMemory()=2013265920 To get help, see http://broadinstitute.github.io/picard/index.html#GettingHelp java.lang.NullPointerException: Cannot invoke "htsjdk.samtools.SAMSequenceRecord.getSequenceLength()" because the return value of "htsjdk.samtools.SAMSequenceDictionary.getSequence(String)" is null at picard.util.DbSnpBitSetUtil.loadVcf(DbSnpBitSetUtil.java:235) at picard.util.DbSnpBitSetUtil.createSnpAndIndelBitSets(DbSnpBitSetUtil.java:203) at picard.vcf.CollectVariantCallingMetrics.doWork(CollectVariantCallingMetrics.java:110) at picard.cmdline.CommandLineProgram.instanceMain(CommandLineProgram.java:289) at org.broadinstitute.hellbender.cmdline.PicardCommandLineProgramExecutor.instanceMain(PicardCommandLineProgramExecutor.java:37) at org.broadinstitute.hellbender.Main.runCommandLineProgram(Main.java:160) at org.broadinstitute.hellbender.Main.mainEntry(Main.java:203) at org.broadinstitute.hellbender.Main.main(Main.java:289)
I use the following commands:
$ /home/gatk-4.4.0.0/./gatk CollectVariantCallingMetrics \
--DBSNP /home/bundle/Homo_sapiens_assembly38.dbsnp138.vcf \
--INPUT /home/sample.g.vcf.gz \
--OUTPUT /home/sample.table \
--GVCF_INPUT true
1 answer
your dbsnp VCF is missing a dictionary in the header (lines starting with "##contig" )
see also: https://gatk.broadinstitute.org/hc/en-us/articles/360042477832-UpdateVcfSequenceDictionary-Picard
Log in to answer this question.
you asked: Individual vs. joint call VCFs How to slice a CRAM file into the 50kb regions padded with 1kb? Hwo to identify that BQSR is performed on CRAM file How to Split 3000 WGS CRAM files into 1Mbp length chunks