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
Assertion `tstart > 0' failed. in overlap.cc #137
Comments
Thanks for the bug report, Emre. Please include the exact command that you ran and the exact error message, copied and pasted from the log file. |
Are you able to reproduce this error using |
So the exact command is: |
Thanks for your help, @sjackman |
I will try using ABySS 2.0.1. I'll run TA now, it should take about 2-3 hours. |
This is the function in abyss-overlap that is causing the trouble. (@emreerhan You said the version of Unfortunately, I don't understand what it's doing. static void addPrefixOverlaps(Graph &g,
const FastaIndex& faIndex, const FMIndex& fmIndex,
const ContigNode& v, const Match& fmi)
{
typedef edge_property<Graph>::type EP;
typedef graph_traits<Graph>::edge_descriptor E;
typedef graph_traits<Graph>::vertex_descriptor V;
assert(v.sense());
assert(fmi.qstart == 0);
Distance ep(-fmi.qspan());
assert(ep.distance < 0);
for (unsigned i = fmi.l; i < fmi.u; ++i) {
size_t toffset = fmIndex[i];
FastaIndex::SeqPos seqPos = faIndex[toffset];
const FAIRecord& tseq = seqPos.get<0>();
size_t tstart = seqPos.get<1>();
size_t tend = tstart + fmi.qspan();
assert(tstart > 0);
if (tend < tseq.size) {
// This match is due to an ambiguity code in the target sequence. |
That is correct. |
It fails with ABySS 2.0.1 as well. |
This is the error I get with ABySS 2.0.1 |
I won't have time to troubleshoot this error this week as we're working on revising the ABySS 2.0 manuscript. Remind me to look at this error next week. |
In the mean time as a workaround, you could probably skip this step of Trans-ABySS pipeline. |
I asked @kmnip (Trans-ABySS veteran) and he said he has seen this error on rare occasions but doesn't know the root cause (or have any workarounds). @emreerhan, is this is a time-critical job? Unfortunately, I'm in the same boat as Shaun. I will try to identify the problem sequence by adding some debugging statements to the code, when I can steal some time. Perhaps if it is only one sequence that is causing the problem we can manually remove it. |
The deadline is TBC right now, so we do have some time. Thanks for the help. |
Hi Ben and Shaun. If you do not have time to debug this error this week, we will use our other tools to complete the analysis. If you do get around to fixing this however, it would be good for us to know for the future, in case it happens again. |
I will likely have time on Wed and will have a look then. Thanks for your patience. |
Great, thanks @benvvalk! |
Sorry @emreerhan, I need one more day. Will look tomorrow morning. |
For the record, even after reassembling the genome, trans-abyss still gives the same error. |
Hi guys, we recently got this error in 3 more genome analysis runs. Do you guys have some time to look at this again? |
I won't be able to spend a lot of time on it, but I can take another stab at least. To be honest, I'm not very optimistic because I'm not familiar with this particular code or with FM indices in general. I would need an example command that crashes and access to the input files in order to debug it (like Emre provided before). You can send that info in a private e-mail if the data is sensitive (benv / sjackman at bcgsc). Btw, I will be away Thurs-Fri this week. |
@calchoo, try using pavfinder |
@calchoo: I looked at this a bit yesterday but I will need more time. I will allocate some more time for it next week. I was indeed able to able to reproduce the crash using the files you provided me by e-mail. Also, I did some background reading about FM indices which should help. I'll let you know if I make any progress. |
Shot in the dark here, but here goes nothing. |
Thank you, @sjackman. I will try logging out the offending sequences and see if it something like that. |
@calchoo I'm sorry, it does not look like I will be able to fix this. I spent yesterday afternoon and all day today debugging it, and although I understand the code much better, the root cause of the problem is still not clear. I also got some help from @sjackman (the original author) for a couple of hours, but unfortunately we were not able to solve it. I may try a few more things next week, but I do not plan to spend much more time on it, unless Inanc/Rene say otherwise. |
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. |
While running trans-ABySS v.1.4.10, my team member had an error where an assertion failed in abyss-overlap in ABySS 1.3.5. After checking the log file, I saw that the assertion that failed was
assert(tstart > 0)
inoverlap.cc
. I realized that in later versions of ABySS that this assertion was removed, so I simply commented out the assertion and ran trans-ABySS again. With this run, another assertion fails:assert(ep0.distance < ep.distance)
.The text was updated successfully, but these errors were encountered: