This is a test version of Biostars. For the public version, visit https://www.biostars.org.
Dictionary size problem in Picard CalculateHsMetrics

Hi everyone,

I'm following a Roche pipeline for the analysis of targeted bisulfite sequencing data and I'm in trouble with Picard CalculateHsMetrics.

I create the indexed reference file with samtools faidx command and the indexed .bam with samtools index.

When I run Picard, with the following command

java -Xmx4g -Xms4g -jar ~/bioTool/picard-tools-2.2.1/picard.jar CalculateHsMetrics BAIT_INTERVALS=DESIGN_bait_intervals.txt TARGET_INTERVALS=DESIGN_target_intervals.txt INPUT=2101435_S8_L001.clipped.bam.bai OUTPUT=2101435_S8_L001_picard_hs_metrics.txt METRIC_ACCUMULATION_LEVEL=ALL_READS REFERENCE_SEQUENCE=~/Data/MethylSeq/genomes/GRCh37_latest_genomic_idx.fa  VALIDATION_STRINGENCY=LENIENT TMP_DIR=.

it terminates with the following exception:

Exception in thread "main" htsjdk.samtools.util.SequenceUtil$SequenceListsDifferException: Sequence dictionaries are not the same size (0, 297)
    at htsjdk.samtools.util.SequenceUtil.assertSequenceListsEqual(SequenceUtil.java:188)
    at htsjdk.samtools.util.SequenceUtil.assertSequenceDictionariesEqual(SequenceUtil.java:271)
    at htsjdk.samtools.util.SequenceUtil.assertSequenceDictionariesEqual(SequenceUtil.java:257)
    at picard.analysis.directed.CollectTargetedMetrics.doWork(CollectTargetedMetrics.java:114)
    at picard.cmdline.CommandLineProgram.instanceMain(CommandLineProgram.java:209)
    at picard.cmdline.PicardCommandLine.instanceMain(PicardCommandLine.java:95)
    at picard.cmdline.PicardCommandLine.main(PicardCommandLine.java:105)

It seems like there is a problem in the indexes, but I cannot figure it out.

picard software error

1 answer

Hello nicola,

you are passing the bam index file (bam.bai) to picard. But this have to be the bam file itsself.

fin swimmer

You're very welcome.

Please mark the answer as accepted if this solve your problem.

fin swimmer

Log in to answer this question.