Comments (6)
Two runs with the current version of ABRA2 should be OK, although I doubt the results will improve much.
If you're trying to run ABRA2 against output from an older ABRA version, you may run into trouble as the format has changed in the YO tag.
The exception above appears to be during the sort phase. You could try disabling the sort using option:
--nosort
and sort the BAM file after ABRA2 completes.
However, please keep in mind that I have not explicitly tested running ABRA2 against older versions of ABRA.
from abra2.
There is also the case where the tag is YO:Z:N/A:12345
, with one instance of N/A
.
Does this mean that the previous contig was N/A and the previous position of the read was 12345?
from abra2.
Hi, the YO tag stores the original alignment information and N/A stands for Not Applicable. This means that the read was originally unaligned. If you're using bwa, when one read in a pair is unmapped it is assigned to the mate's locus. The number after N/A is set to the read's original position (i.e mate locus) and is used downstream for sorting.
from abra2.
Thank you @mozack for the information.
Now that I understand the reason behind the N/A for the YO tag, it seems there may be an issue with the YO tag parsing on this line:
https://github.com/mozack/abra2/blob/master/src/main/java/abra/SortedSAMWriter.java#L107
Here is the stack trace from our error:
INFO Thu Apr 04 15:26:51 EDT 2019 PROCESS_REGION_MSECS: 2_158655846_158655966 3676 63 11 0
INFO Thu Apr 04 15:26:55 EDT 2019 PROCESS_REGION_MSECS: 1_11187651_11187891 5148 13 22 0
INFO Thu Apr 04 15:26:55 EDT 2019 PROCESS_REGION_MSECS: 2_61725997_61726117 113 63 14 0
INFO Thu Apr 04 15:26:55 EDT 2019 PROCESS_REGION_MSECS: 1_11188001_11188241 167 10 18 0
INFO Thu Apr 04 15:26:55 EDT 2019 PROCESS_REGION_MSECS: 2_95849218_95849383 115 23 13 0
INFO Thu Apr 04 15:26:55 EDT 2019 PROCESS_REGION_MSECS: 1_156846157_156846397 311 21 20 0
INFO Thu Apr 04 15:26:56 EDT 2019 Clock time in Chromosome: 2_125000001_150000000: 35
INFO Thu Apr 04 15:26:56 EDT 2019 Processing chromosome chunk: 2_175000001_200000000
INFO Thu Apr 04 15:26:56 EDT 2019 Clock time in Chromosome: 1_100000001_125000000: 57
INFO Thu Apr 04 15:26:56 EDT 2019 Processing chromosome chunk: 2_200000001_225000000
java.lang.ArrayIndexOutOfBoundsException: 1
at abra.SortedSAMWriter.addAlignment(SortedSAMWriter.java:107)
at abra.ReAligner.remapReads(ReAligner.java:757)
at abra.ReAligner.processChromosomeChunk(ReAligner.java:404)
at abra.ReAlignerRunnable.go(ReAlignerRunnable.java:21)
at abra.AbraRunnable.run(AbraRunnable.java:20)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
java.lang.ArrayIndexOutOfBoundsException: 1
at abra.SortedSAMWriter.addAlignment(SortedSAMWriter.java:107)
at abra.ReAligner.remapReads(ReAligner.java:757)
at abra.ReAligner.processChromosomeChunk(ReAligner.java:404)
at abra.ReAlignerRunnable.go(ReAlignerRunnable.java:21)
at abra.AbraRunnable.run(AbraRunnable.java:20)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
INFO Thu Apr 04 15:26:56 EDT 2019 PROCESS_REGION_MSECS: 2_178098685_178099045 239 10 21 0
My guess is that there should be a check for N/A
before trying to parse this field, similar to how it is handled here:
abra2/src/main/java/abra/SortedSAMWriter.java
Line 404 in a847393
Let me know if I can provide more information.
from abra2.
I should note that we are attempting to run Abra two times, in order to find out whether an additional realignment step might give better results. This is possibly not an intended use case
from abra2.
Thank you very much for the info, we'll be sticking with ABRA2 to keep the YO tag format consistent.
from abra2.
Related Issues (20)
- Realigned output bam TLEN field plus/minus sign when FLAG == 147 HOT 2
- workflow of data pre-processing of RNAseq HOT 6
- feature request: stdin functionality
- Bed file format HOT 1
- Num reads to scan for read length/insert length/mapq
- max_paths_from_root HOT 3
- v2.24 gives "Error loading: libAbra.so", older versions do not HOT 7
- java.lang.IllegalArgumentException: Invalid reference index -1 HOT 1
- Score threshold and content of the printed INFO
- Alternate or duplicate alignment in output HOT 1
- Abra and log4j
- java.lang.OutOfMemoryError: Java heap space HOT 1
- Abra2 creating large (around 100bp) deletions to alignment
- Fusions
- Unknown format conversion exception HOT 1
- build fails on linux
- How to shorten run time HOT 4
- IndelRealigner-parameters vs Abra2-parameters HOT 1
- Specific case that ABRA2 is not realigning correctly
- Abra2-processed bams are incompatible with Strelka2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from abra2.