Skip to content
This repository was archived by the owner on Sep 2, 2024. It is now read-only.

SOAPdenovo2 segfaults on Arch Linux #10

Closed
michaelgruenstaeudl opened this issue Mar 22, 2018 · 5 comments
Closed

SOAPdenovo2 segfaults on Arch Linux #10

michaelgruenstaeudl opened this issue Mar 22, 2018 · 5 comments

Comments

@michaelgruenstaeudl
Copy link

michaelgruenstaeudl commented Mar 22, 2018

Dear Holm,

I am running IOGA on a dataset (paired-end Illumina reads) from which I had successfully assembled complete plastid genomes in the past. When running IOGA on the same dataset today, IOGA reports that SOAPdenovo2 fails under every k-mer level evaluated. IOGA then exits with an index error for variable best, which is probably empty:

Iteration 1
[BAR02A_S1_L001.1] BBmap
[BAR02A_S1_L001.1] Sorting SAM files
[BAR02A_S1_L001.1] Removing duplicates
[BAR02A_S1_L001.1] Extracting reads
[BAR02A_S1_L001.1] Writing forward reads
[BAR02A_S1_L001.1] Writing reverse reads
[BAR02A_S1_L001.1] Old size = 0
[BAR02A_S1_L001.1] New size = 3093513
[BAR02A_S1_L001.1] Running SOAPdenovo2 k = 33 -- 10:32:42.149468
[BAR02A_S1_L001.1] SOAPdenovo2 k = 33 failed
[BAR02A_S1_L001.1] Running SOAPdenovo2 k = 37 -- 10:32:42.313427
[BAR02A_S1_L001.1] SOAPdenovo2 k = 37 failed
[BAR02A_S1_L001.1] Running SOAPdenovo2 k = 41 -- 10:32:42.499712
[BAR02A_S1_L001.1] SOAPdenovo2 k = 41 failed
[BAR02A_S1_L001.1] Running SOAPdenovo2 k = 45 -- 10:32:42.672296
[BAR02A_S1_L001.1] SOAPdenovo2 k = 45 failed
[BAR02A_S1_L001.1] Running SOAPdenovo2 k = 49 -- 10:32:42.864960
[BAR02A_S1_L001.1] SOAPdenovo2 k = 49 failed
[BAR02A_S1_L001.1] Running SOAPdenovo2 k = 53 -- 10:32:43.026761
[BAR02A_S1_L001.1] SOAPdenovo2 k = 53 failed
[BAR02A_S1_L001.1] Running SOAPdenovo2 k = 57 -- 10:32:43.212315
[BAR02A_S1_L001.1] SOAPdenovo2 k = 57 failed
[BAR02A_S1_L001.1] Running SOAPdenovo2 k = 61 -- 10:32:43.401318
[BAR02A_S1_L001.1] SOAPdenovo2 k = 61 failed
[BAR02A_S1_L001.1] Running SOAPdenovo2 k = 65 -- 10:32:43.580864
[BAR02A_S1_L001.1] SOAPdenovo2 k = 65 failed
[BAR02A_S1_L001.1] Running SOAPdenovo2 k = 69 -- 10:32:43.760832
[BAR02A_S1_L001.1] SOAPdenovo2 k = 69 failed
[BAR02A_S1_L001.1] Running SOAPdenovo2 k = 73 -- 10:32:43.963374
[BAR02A_S1_L001.1] SOAPdenovo2 k = 73 failed
[BAR02A_S1_L001.1] Running SOAPdenovo2 k = 77 -- 10:32:44.130588
[BAR02A_S1_L001.1] SOAPdenovo2 k = 77 failed
[BAR02A_S1_L001.1] Running SOAPdenovo2 k = 81 -- 10:32:44.322826
[BAR02A_S1_L001.1] SOAPdenovo2 k = 81 failed
[BAR02A_S1_L001.1] Running SOAPdenovo2 k = 85 -- 10:32:44.507801
[BAR02A_S1_L001.1] SOAPdenovo2 k = 85 failed
[BAR02A_S1_L001.1] Running SOAPdenovo2 k = 89 -- 10:32:44.688810
[BAR02A_S1_L001.1] SOAPdenovo2 k = 89 failed
[BAR02A_S1_L001.1] Running SOAPdenovo2 k = 93 -- 10:32:44.867438
[BAR02A_S1_L001.1] SOAPdenovo2 k = 93 failed
[BAR02A_S1_L001.1] Running SOAPdenovo2 k = 97 -- 10:32:45.051394
[BAR02A_S1_L001.1] SOAPdenovo2 k = 97 failed
Traceback (most recent call last):
  File "/home/michael_science/git/IOGA//IOGA.py", line 432, in <module>
    main(args.reference,args.name,args.forward,args.reverse,args.threads,args.insertsize,args.maxrounds,args.verbose)
  File "/home/michael_science/git/IOGA//IOGA.py", line 377, in main
    source,FP,RP,final_iteration = IOGA_loop(name,ref,forward,reverse,insertsize,threads,maxrounds)
  File "/home/michael_science/git/IOGA//IOGA.py", line 359, in IOGA_loop
    best,k = run_soapdenovo(folder,prefix,FP,RP,insertsize,threads)
  File "/home/michael_science/git/IOGA//IOGA.py", line 254, in run_soapdenovo
    best=sorted(n50,key = lambda x: int(x[1]),reverse = True)[0][0]
IndexError: list index out of range

I strongly suspect that a recent Python update (or an update of one of the Python dependency packages) has corrupted the IOGA code such that the wrapper function for SOAPdenovo2 (i.e., run_soapdenovo()) no longer interacts with the assembler properly. Why else would SOAPdenovo2 fail under every k-mer level on a dataset where an assembly worked nicely before.

Edit 1:
I found that each of the SOAPdenovo2 subfolders generated by IOGA during the assembly process (i.e., BAR02A_S1_L001.1.soap_33, BAR02A_S1_L001.1.soap_37, ..., BAR02A_S1_L001.1.soap_97) contains merely two files: an empty log file and an error file with the following contents:

Version 2.04: released on July 13th, 2012
Compile Jul  9 2013	11:57:30

Evidently, SOAPdenovo2 is not called properly.

Can you please check the code?!

@holmrenser
Copy link
Owner

Thanks for the error report. I'll dive into the issue ASAP, in the meantime, can you provide me with the following information?

  • python version used
  • whether you are using SOAPdenovo as installed through IOGA, or whether you have your own installation.

@michaelgruenstaeudl
Copy link
Author

  • I am running IOGA with Python2.7
  • IOGA is using SOAPdenovo as installed through your setup script setup_IOGA.py (i.e., it is running IOGA/exe/SOAPdenovo2-bin-LINUX-generic-r240/SOAPdenovo-127mer)

@michaelgruenstaeudl
Copy link
Author

Upon closer examination, I found that the SOAPdenovo version that is installed through your setup script cannot be run on my system:

~/git/IOGA/exe/SOAPdenovo2-bin-LINUX-generic-r240/SOAPdenovo-127mer all

Version 2.04: released on July 13th, 2012
Compile Jul  9 2013	11:57:30
Segmentation fault (core dumped)


~/git/IOGA/exe/SOAPdenovo2-bin-LINUX-generic-r240/SOAPdenovo-127mer pregraph

Version 2.04: released on July 13th, 2012
Compile Jul  9 2013	11:57:30
Segmentation fault (core dumped)

Here are my kernel details:

Linux 4.15.11-1-ARCH
x86_64 GNU/Linux

@holmrenser
Copy link
Owner

Given that the error you get from the SOAP binary is equivalent to what you see in the error file I am not sure this is a problem with IOGA? It seems like somehow your system stopped being able to run the same SOAP binary? When did you install IOGA/SOAP and have you tried reinstalling it?

Also, it seems like you are running Arch-linux, have you been successful in the past with running IOGA (including this SOAP binary) on Arch?

@michaelgruenstaeudl
Copy link
Author

Hi Holm,
yes, I have successfully run IOGA on Arch Linux in the past. In fact, the last time I ran IOGA (Nov 2017), everything worked without fail. Thus, I agree that my issue is not with IOGA itself, but with the SOAPdenovo2 binary. I will close the issue here and rather continue at: aquaskyline/SOAPdenovo2#39

@holmrenser holmrenser changed the title SOAPdenovo2 fails under every k-mer level SOAPdenovo2 segfaults on Arch Linux Mar 22, 2018
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants