Blast Error Segmentation Fault
Contents |
faq • rss Community Log In Sign Up Add New Post Question: Blastn Segmentation Fault 1 4.8 years ago by Srihari •
C Error Segmentation Fault
20 Srihari • 20 wrote: Hi, I am running a BLASTN runtime error segmentation fault of about 150 sequences against a genome that is 2.2 gigabases long. A few of my queries are
C Error Segmentation Fault (core Dumped)
actually full length BAC end sequences running to around 150,000 bases. I expect to find huge, contiguous hits for some BACs in the genome. Here's the command I use segmentation fault error in c program - blastn 80BACs.fasta -db mygenome -out 80BACsBLAST -outfmt 10 -num_threads 8 -evalue 10e-3 -index_name mygenomeMBI Around 10 minutes after it starts running, the program halts after producing a segmentation fault. I did a 'ulimit -s unlimited' to set the stack size to unlimited, but to no avail. I also went easy on the number of threads in subsequent trials, segmentation fault error 4 setting num_threads to 5 and subsequently, 2 - but that didn't help either. I am using the binaries from rmblast-1.2-ncbi-blast-2.2.23+. I had earlier run a smaller query dataset against the same genome which worked fine, the BLAST completed in half a day. This issue, I am convinced is most definitely due to some very very long query sequences - I'd highly appreciate any help in this regard! Thanks, Srihari blast • 2.9k views ADD COMMENT • link • Not following Follow via messages Follow via email Do not follow modified 8 months ago by Biostar ♦♦ 0 • written 4.8 years ago by Srihari • 20 2 4.8 years ago by Lee Katz • 2.8k Atlanta, GA Lee Katz • 2.8k wrote: For such a large query, you might want to try a different tool. Consider what you actually want to do. Mummer might be good if you want to find the region that your query matches with. If you are searching for homology with genes, consider breaking your query into individual genes b
access. Click here to register now, and join the discussion Community Links Members List Search Forums Show Threads
Segmentation Fault Error In Linux
Show Posts Tag Search Advanced Search Go to Page... segmentation fault error 139 Similar Threads Thread Thread Starter Forum Replies Last Post exonerate segmentation fault maria.b Bioinformatics 3 03-20-2014
Internal Compiler Error Segmentation Fault
01:07 PM Ray : Segmentation fault (11) Nagesh De novo discovery 2 07-04-2013 08:20 PM Ray : Segmentation fault (11) Nagesh De novo discovery 0 https://www.biostars.org/p/15167/ 04-26-2013 02:07 AM Maq Segmentation fault Seq84 Bioinformatics 3 07-13-2012 04:05 AM Dindel Segmentation fault srividya Bioinformatics 0 02-23-2011 08:32 PM Thread Tools 12-10-2013, 03:06 AM #1 bfantinatti Member Location: Sao Paulo/Brazil Join Date: Aug 2012 Posts: 20 Blast2 - Segmentation Fault Hi guys, I am having a problem http://seqanswers.com/forums/showthread.php?t=39106 with blast2. I am running linux mint 14, and installed blast2 using the repository. It worked fine once, but after the first usage, started to present the following problem: Any one there had this problem? My input is: blast2 -p blastn -i HPRT -d M_zebra_v0.assembly.fasta -o HPRT.Mzebra.out -a 4 The program return this: *** glibc detected *** blast2: double free or corruption (fasttop): 0x00007f2c6a081f70 *** ======= Backtrace: ========= /lib/x86_64-linux-gnu/libc.so.6(+0x7eb96)[0x7f2c66453b96] /usr/lib/x86_64-linux-gnu/libncbi.so.6(Nlm_MemFree+0xe)[0x7f2c669d3c3e] /usr/lib/x86_64-linux-gnu/libncbi.so.6(ReleaseAppErrInfo+0x70)[0x7f2c669ce6b0] /usr/lib/x86_64-linux-gnu/libncbi.so.6(Nlm_ReleaseAppContext+0x56)[0x7f2c669d1f26] blast2(NlmThreadExit+0x78)[0x7f2c67fc23e8] blast2(+0x64b7)[0x7f2c67fc24b7] /lib/x86_64-linux-gnu/libpthread.so.0(+0x7e9a)[0x7f2c6679ce9a] /lib/x86_64-linux-gnu/libc.so.6(clone+0x6d)[0x7f2c664c93fd] ======= Memory map: ======== 7f2c38000000-7f2c38021000 rw-p 00000000 00:00 0 7f2c38021000-7f2c3c000000 ---p 00000000 00:00 0 7f2c3d3c6000-7f2c3d3db000 r-xp 00000000 08:01 4460113 /lib/x86_64-linux-gnu/libgcc_s.so.1 7f2c3d3db000-7f2c3d5da000 ---p 00015000 08:01 4460113 /lib/x86_64-linux-gnu/libgcc_s.so.1 7f2c3d5da000-7f2c3d5db000 r--p 00014000 08:01 4460113 /lib/x86_64-linux-gnu/libgcc_s.so.1 7f2c3d5db000-7f2c3d5dc000 rw-p 00015000 08:01 4460113 /lib/x86_64-linux-gnu/libgcc_s.so.1 7f2c3d5fb000-7f2c4c000000 r--p 00000000 08:01 4201180 /home/bruno/Documentos/Doutorado/Genomas/M_zebra_v0.assembly.fasta.nsq 7f2c4c000000-7f2c4c021000 rw-p 00000000 00:00 0 7f2c4c021000-7f2c50000000 ---p 00000000 00:00 0 7f2c53685000-7f2c53686000 ---p 00000000 00:00 0 7f2c53686000-7f2c53e86000 rw-p 00000000 00:00 0 [stack:6637] 7f2c54000000-7f2c54021000 rw-p 00000000 00:00 0 7f2c54021000-7f2c58000000 ---p 00000000 00:00 0 7f2c5c000000-7f
with XML output using a FASTA subject (consuming loads of swap space then getting killed). This doesn't happen with tabular output, nor if using a BLAST database: Memory and CPU usage (until killed by OS) The http://blastedbio.blogspot.com/2012/04/blast-memory-hog-with-subject-fasta-and.html screenshots are from the cluster monitoring tool Ganglia, the horizontal red lines show the machine's physical limits (here 4 CPUs and 8 GB of RAM). This example is using BLAST+ with a subject FASTA https://entropicevolution.wordpress.com/2013/01/17/i-got-to-compile-ncbis-blast-2-2-27-under-mountain-lion/ file rather than a pre-compiled BLAST database, because it is easier and the original search was expected to be a one-off, and I expected only a relatively modest performance hit. It turns out that was segmentation fault naive. The cluster node is running 64bit CentOS Linux, and has 8GB of RAM. The BLAST+ tools were version 2.2.25+ (then updated to the current release 2.2.26+ and retested), using the pre-compiled binaries from the NCBI FTP site. The query FASTA file was 1420 nucleotide sequences (ESTs) and the subject FASTA file was 20359 protein sequences (predicted genes), so this was a BLASTX search. This is actually a subset of error segmentation fault the real query set, I wanted something more modest for exploring this issue. My colleague observed similar issues with BLASTP comparing bacterial gene sets (so about 5000 proteins versus 5000 proteins). Failing Approach - FASTA subject with XML out The command run was: $ blastx -query q.fasta -subject s.fasta -evalue 0.0001 -out blastx.xml -outfmt 5 -num_threads 4 Note that at the time of writing the multi-threading option is disabled when using a subject file. Back in 2010 I found BLAST 2.2.24+ could crash with a bus error or segmentation fault when used in this way. To avoid this, the NCBI disabled this feature in BLAST 2.2.25+ and it is still disabled in 2.2.26+ as well. I'm still hoping for a proper fix. That ran for about 20 minutes, consuming about 20G of RAM and swap before getting killed by the OS (error 9). Interesting no output was written to the XML file at all - either something stupid is going on with caching the output in memory, or it didn't even manage to search one query sequence! Workaround One - Make a BLAST database $ makeblastdb -dbtype prot -in s.fasta Building a new DB, current time: 04/18/2012 14:35:45 New DB name: s.fasta New DB title: s.fasta Sequen
to understand. People around the web were saying that this error meant that the RAM was shitty, but this error happened in every mac I have. You just downloaded the precompiled version? Then you're boring. Anyway, yes, I am obsessed with compiling my programs because then they are "optimized" to my liking. Well, I know, commonly there will be no difference, and commonly what you want is something that just works. Anyway. I wanted to compile it myself, but couldn't. So I was stuck with NCBI‘s BLAST 2.2.26+ (the horror!). As I was telling you, I had tried to compile this one, and, because I always forget how I compiled the previous version, well, I did not know what option could I be missing. Of course, I had the Xcode and such installed, otherwise how on Earth could I compile. Thus, I am assuming that you know how to install Xcode, and how to install the command-line compiling tools from within Xcode's preferences panel. Normally, you are supposed to download the latest version of NCBI's BLAST, which, for me works as follows: I first investigate the files available with this command (the "%" represents the cursor, don't type it!): % rsync rsync://rsync.ncbi.nih.gov/blast/executables/LATEST/ The command gives me the list of blast thingies in there. Tons of precompiled ones (I know, I know, I don't care), and, today, The Source: ncbi-blast-2.2.27+-src.tar.gz, which I can retrieve with the command: % rsync -av \ rsync://rsync.ncbi.nih.gov/blast/executables/LATEST/ncbi-blast-2.2.27+-src.tar.gz \ . (The dot at the end is important) With that, we untar the source: % tar zxvf ncbi-blast-2.2.27+-src.tar.gz move yourself to the extracted directory: % cd ncbi-blast-2.2.27+-src/c++ and here is where you are supposed to type this: % ./configure --prefix=/usr/local/ncbi --without-debug \ --with-mt --with-build-root=ReleaseMT (I added the "prefix" thingie because I want it installed in it's own directory path.) Well, if I type make, the process fails after some minutes giving me this shit: internal compiler error: Segmentation fault: 11 As I said, I looked it up, and found lots of useless advice. What did I do? Well, so it happens that I have fink installed. So it happens that because I install octave, a GNU, therefore free, matlab-like thingie, I get gcc-4 installed. Because I get that, I thought, what the hell, maybe those compilers will do the trick. So, I first declared these environmental variables: % setenv CC /sw/bin/gcc-4 % setenv CXX /sw/bin/g++-4 % setenv CFLAGS "-O3" % setenv CXXFLAGS "-O3" (I still use the tcsh, in bash the equivalent would be "export CC=/sw/bin/gcc-4" and so on.) Now, the "-O3" might not be necess