diff --git a/java/src/org/broadinstitute/sting/gatk/walkers/phasing/AnnotateMNPsWalker.java b/java/src/org/broadinstitute/sting/gatk/walkers/phasing/AnnotateMNPsWalker.java index fc8daf05a..adf751bdc 100755 --- a/java/src/org/broadinstitute/sting/gatk/walkers/phasing/AnnotateMNPsWalker.java +++ b/java/src/org/broadinstitute/sting/gatk/walkers/phasing/AnnotateMNPsWalker.java @@ -190,7 +190,7 @@ public class AnnotateMNPsWalker extends RodWalker { logger.debug("Current list of per-locus features\n" + locusToRefSeqFeatures); Map MNPannotations = annotateMNP(vc); - MNPannotations.putAll(vc.getAttributes()); + MNPannotations.putAll(RefSeqDataParser.removeRefSeqAttributes(vc.getAttributes())); // remove any RefSeq INFO, since adding it in more thoroughly here vc = VariantContext.modifyAttributes(vc, MNPannotations); writeVCF(vc); diff --git a/java/src/org/broadinstitute/sting/gatk/walkers/phasing/RefSeqDataParser.java b/java/src/org/broadinstitute/sting/gatk/walkers/phasing/RefSeqDataParser.java index d5d88f9e3..af3960b1a 100644 --- a/java/src/org/broadinstitute/sting/gatk/walkers/phasing/RefSeqDataParser.java +++ b/java/src/org/broadinstitute/sting/gatk/walkers/phasing/RefSeqDataParser.java @@ -132,6 +132,19 @@ public class RefSeqDataParser { return refSeqNameAttribs; } + public static Map removeRefSeqAttributes(Map attributes) { + Map removedRefSeqAttributes = new HashMap(attributes); + + Iterator> attrIt = removedRefSeqAttributes.entrySet().iterator(); + while (attrIt.hasNext()) { + String key = attrIt.next().getKey(); + if (key.startsWith(REFSEQ_PREFIX)) + attrIt.remove(); + } + + return removedRefSeqAttributes; + } + private static Map getAllRefSeqEntriesByName(VariantContext vc) { Map nameToEntries = new TreeMap();