Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Error in PalindromeArtifactClipReadTransformer #5036

Closed
1 of 2 tasks
meganshand opened this issue Jul 19, 2018 · 2 comments · Fixed by #5038
Closed
1 of 2 tasks

Error in PalindromeArtifactClipReadTransformer #5036

meganshand opened this issue Jul 19, 2018 · 2 comments · Fixed by #5038

Comments

@meganshand
Copy link
Contributor

Bug Report

Affected tool(s) or class(es)

Mutect2

Affected version(s)

  • Latest public release version [version?]
  • Latest master branch as of 7/18/18

Description

When running Mutect yesterday on Mitochondrial data I got the following error:

java.lang.IllegalArgumentException: Invalid interval. Contig:chrM start:-4 end:65

	at org.broadinstitute.hellbender.utils.Utils.validateArg(Utils.java:728)
	at org.broadinstitute.hellbender.utils.SimpleInterval.validatePositions(SimpleInterval.java:61)
	at org.broadinstitute.hellbender.utils.SimpleInterval.<init>(SimpleInterval.java:37)
	at org.broadinstitute.hellbender.transformers.PalindromeArtifactClipReadTransformer.apply(PalindromeArtifactClipReadTransformer.java:86)
	at org.broadinstitute.hellbender.transformers.PalindromeArtifactClipReadTransformer.apply(PalindromeArtifactClipReadTransformer.java:48)
	at org.broadinstitute.hellbender.transformers.ReadTransformer.lambda$andThen$f85d1091$1(ReadTransformer.java:20)
	at org.broadinstitute.hellbender.transformers.ReadTransformer$$Lambda$107/1786040872.apply(Unknown Source)
	at org.broadinstitute.hellbender.utils.iterators.ReadTransformingIterator.next(ReadTransformingIterator.java:42)
	at org.broadinstitute.hellbender.utils.iterators.ReadTransformingIterator.next(ReadTransformingIterator.java:14)
	at org.broadinstitute.hellbender.utils.downsampling.ReadsDownsamplingIterator.fillDownsampledReadsCache(ReadsDownsamplingIterator.java:69)
	at org.broadinstitute.hellbender.utils.downsampling.ReadsDownsamplingIterator.advanceToNextRead(ReadsDownsamplingIterator.java:55)
	at org.broadinstitute.hellbender.utils.downsampling.ReadsDownsamplingIterator.<init>(ReadsDownsamplingIterator.java:34)
	at org.broadinstitute.hellbender.engine.MultiIntervalLocalReadShard.iterator(MultiIntervalLocalReadShard.java:149)
	at org.broadinstitute.hellbender.engine.AssemblyRegionIterator.<init>(AssemblyRegionIterator.java:109)
	at org.broadinstitute.hellbender.engine.AssemblyRegionWalker.processReadShard(AssemblyRegionWalker.java:282)
	at org.broadinstitute.hellbender.engine.AssemblyRegionWalker.traverse(AssemblyRegionWalker.java:267)
	at org.broadinstitute.hellbender.engine.GATKTool.doWork(GATKTool.java:993)
	at org.broadinstitute.hellbender.cmdline.CommandLineProgram.runTool(CommandLineProgram.java:135)
	at org.broadinstitute.hellbender.cmdline.CommandLineProgram.instanceMainPostParseArgs(CommandLineProgram.java:180)
	at org.broadinstitute.hellbender.cmdline.CommandLineProgram.instanceMain(CommandLineProgram.java:199)
	at org.broadinstitute.hellbender.Main.runCommandLineProgram(Main.java:160)
	at org.broadinstitute.hellbender.Main.instanceMain(Main.java:146)
	at org.broadinstitute.hellbender.Main.instanceMain(Main.java:187)
	at org.broadinstitute.hellbender.CommandLineProgramTest.runCommandLine(CommandLineProgramTest.java:32)
	at org.broadinstitute.hellbender.utils.test.CommandLineProgramTester.runCommandLine(CommandLineProgramTester.java:97)
	at org.broadinstitute.hellbender.tools.walkers.mutect.Mutect2IntegrationTest.testTumorNormal(Mutect2IntegrationTest.java:237)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:497)
	at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:108)
	at org.testng.internal.Invoker.invokeMethod(Invoker.java:661)
	at org.testng.internal.Invoker.invokeTestMethod(Invoker.java:869)
	at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1193)
	at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:126)
	at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:109)
	at org.testng.TestRunner.privateRun(TestRunner.java:744)
	at org.testng.TestRunner.run(TestRunner.java:602)
	at org.testng.SuiteRunner.runTest(SuiteRunner.java:380)
	at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:375)
	at org.testng.SuiteRunner.privateRun(SuiteRunner.java:340)
	at org.testng.SuiteRunner.run(SuiteRunner.java:289)
	at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52)
	at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:86)
	at org.testng.TestNG.runSuitesSequentially(TestNG.java:1301)
	at org.testng.TestNG.runSuitesLocally(TestNG.java:1226)
	at org.testng.TestNG.runSuites(TestNG.java:1144)
	at org.testng.TestNG.run(TestNG.java:1115)
	at org.testng.IDEARemoteTestNG.run(IDEARemoteTestNG.java:72)
	at org.testng.RemoteTestNGStarter.main(RemoteTestNGStarter.java:123)

Steps to reproduce

These are the arguments I used (the input bam is on the file system):

final String[] args = {
                "-I", "/humgen/gsa-hpprojects/dev/mshand/SpecOps/Mitochondria/Filtering/IGV/198489_vs_811158/sorted.mt.1.bam",
                "-" + M2ArgumentCollection.TUMOR_SAMPLE_SHORT_NAME, "198489",
                "-R", "/humgen/gsa-hpprojects/dev/mshand/SpecOps/Mitochondria/MitochondriaOnlyFastas/Homo_sapiens_assembly38.mt_only.fasta",
                "-O", outputVcf.getAbsolutePath(),
                "--max-reads-per-alignment-start", "0",
                "-default-af", "0",
                "--initial-tumor-lod", "0",
                "--tumor-lod-to-emit", "0",
                "--min-pruning", "10",
                "--annotation", "StrandBiasBySample",
                //"--ignore-itr-artifacts", "true",
        };

I tried it with and without --ignore-itr-artifacts but got the same error both times.

@davidbenjamin Any idea if this is an easy fix?

@davidbenjamin
Copy link
Contributor

@meganshand Probably. I will try to fix it today. First, could you tell me if there's anything special about mitochondria being circular that I should know i.e. is there some equivalence between -4 and 16566 or whatever? If so, my error is venial; if not, I'm just a bozo.

@meganshand
Copy link
Contributor Author

The fact that it's circular means that there are reads and bases right up against the edge of the contig and often have soft clips that extend beyond the contig. So it looks a bit like this:

screen shot 2018-07-19 at 11 37 45 am

So yes, circular means it's probably throwing in a weird edge case.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants