We've moved!
This site is now read-only. You can find our new documentation site and support forum for posting questions here.
Be sure to read our welcome blog!

MNP and HaplotypeCaller GVCF mode

dolevrdolevr Member
edited November 2018 in Ask the GATK team


I am attempting to run HaplotypeCaller in a way that will merge adjacent SNPs into MNPs.
To do so I set --max-mnp-distance to 1 or 2.

This worked well when I did not used GVCF mode.
However, when I attempted this in GVCF mode I got the following error:
A USER ERROR has occurred: Illegal argument value: Non-zero maxMnpDistance is incompatible with GVCF mode.
(I am using GATK

I am not sure I understand this conceptually:
If my callset contains two (or more) heterozygous SNPs that occur in adjacent genomic sites, they can only be determined to constitute part of a single MNP if both SNPs originate from the same chromsome/haplotype.
This is determined by phasing the callset, which as explained in the "Purpose and operation of Read-backed Phasing" page, is only enabled when HaplotypeCaller is run in GVCF or BP_RESOLUTION mode.

Following this reasoning it appears to me that merging SNPs into MNPs will only make sense in one of this modes since otherwise SNPs from different haplotypes can be merged erroneously.

Therefore I do not understand why in MNP merging possible without enabling GVCF mode, but is incompatible with GVCF mode.

I will be very glad for an explanation.

Best Answers


  • Hi Bhanu

    Thanks! this makes sense to me.
    However I still do not understand how is MNP calling done in the default mode, since without phasing we cannot determine if this indeed a MNP or two afjacent SNPs on from different chromsomes.
    Can you please explain?


Sign In or Register to comment.