diff --git a/java/src/org/broadinstitute/sting/gatk/executive/MicroManager.java b/java/src/org/broadinstitute/sting/gatk/executive/MicroManager.java index 7c4db183b..a4a53db37 100644 --- a/java/src/org/broadinstitute/sting/gatk/executive/MicroManager.java +++ b/java/src/org/broadinstitute/sting/gatk/executive/MicroManager.java @@ -59,6 +59,8 @@ public class MicroManager { ShardStrategy shardStrategy = ShardStrategyFactory.shatter( ShardStrategyFactory.SHATTER_STRATEGY.LINEAR, ref.getSequenceDictionary(), SHARD_SIZE ); + ReferenceIterator refIter = new ReferenceIterator(ref); + Object accumulator = ((LocusWalker)walker).reduceInit(); for(Shard shard: shardStrategy) { @@ -74,7 +76,7 @@ public class MicroManager { throw new RuntimeException( ex ); } - ReferenceProvider referenceProvider = new ReferenceProvider( new ReferenceIterator(ref) ); + ReferenceProvider referenceProvider = new ReferenceProvider( refIter ); LocusContextProvider locusProvider = new LocusContextProvider( readShard ); accumulator = traversalEngine.traverse( walker, shard, referenceProvider, locusProvider, accumulator );