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

03367': 'exit status 2' #3

Open
nsarode opened this issue Oct 30, 2013 · 3 comments
Open

03367': 'exit status 2' #3

nsarode opened this issue Oct 30, 2013 · 3 comments

Comments

@nsarode
Copy link

nsarode commented Oct 30, 2013

The database is Uniref-90 fasta file compressed using compress command. The folder essentially contains following files : coarse.fasta coarse.fasta.index coarse.links coarse.links.index coarse.seeds compressed compressed.index params

The database is in another user's account (though the complete path to it given to the progam)

Tried running cablastp using the following command


cablastp-search /path/capblastp-UNIREF90 /path/stn1_ALL_prodigal.prot --blast-args -max_target_seqs 10 -out stn1_ALL_prodigal.blast -num_threads 6 -outfmt '6 qseqid sseqid pident qcovs length mismatch qstart qend sstart send evalue bitscore stitle'

gs -max_target_seqs 10 -num_threads 6 -out stn1_ALL_prodigal.blast -outfmt '6 qseqid sseqid pident qcovs length mismatch qstart qend sstart send evalue bitscore stitle'
Opening database in path/capblastp-UNIREF90...
Opening compressed database...
Done opening compressed database.
Opening coarse database...
Done opening coarse database.
Done opening database in /path/capblastp-UNIREF90

Blasting query on coarse database...
blastp -db path/capblastp-UNIREF90/blastdb-coarse -num_threads 24 -outfmt 5 -dbsize 4923603367
Error blasting coarse database: Error running 'blastp -db path/blastdb-coarse -num_threads 24 -outfmt 5 -dbsize 4923603367': 'exit status 2'.

stderr:

BLAST Database error: No alias or index file found for protein database [path/blastdb-coarse] in search path [path_to_input_file:/home/db/blastdb:]

Is this an issue with the compressing of the database ? it seems to open the compressed database just fine. The path given in stderr after 'in search path' is different from what I gave for the database.

@BurntSushi
Copy link
Owner

It looks like your compressed database is corrupt. Every compressed database contains a blast database of the compressed sequences, and this seems to be where cablastp-search is failing.

The blast database is created at the end of compression, and if it fails, it outputs an error message. But perhaps the error message was ignored? (The rest of the database would still be created.)

In either case, it should be possible to fix this without re-running compression. (Although it would be good to run compression on a smaller database and make sure everything runs correctly. If you get an error, please come back here with it and open a new issue.)

We can fix it by generating the BLAST database:

cd path/to/cablastp-UNIREF90
makeblastdb -dbtype prot -in ./coarse.fasta -out blastdb-coarse

Then re-running your cablastp-search command should do the trick.

@nsarode
Copy link
Author

nsarode commented Nov 1, 2013

Thanks for the help. There was some serious issue with the compressed database I guess, cause the coarse.fasta file is zero bytes! As a result I obviously got the "BLAST options error: File ./coarse.fasta is empty" error. All I can do for it is re-compress the database myself (someone else had done that earlier). That should take a while.
I had another COG database that was compressed properly and that seems to be running smoothly (so far).

There is another question though, even though my command is
~/path/to/capblast/cablastp-search path/database query_file --p="4" --blast-args -max_target_seqs 10 -num_threads 4 -out out.blast -outfmt '6 qseqid sseqid pident qcovs length mismatch qstart qend sstart send evalue bitscore stitle'

Why does the program ignore the num_threads and outfmt value given by me (see below) ? Should every individual parameter be preceded by --blast-args ?

Blasting query on coarse database...
blastp -db /projects/home/nsarode3/Database/capblastp-cogs_db_aa/blastdb-coarse -num_threads 16 -outfmt 5 -dbsize 47558392

@BurntSushi
Copy link
Owner

All I can do for it is re-compress the database myself (someone else had done that earlier). That should take a while.

Dang, that sucks. Sorry about that. If the compressed database is still corrupt after that, could you please post the output of your cablastp-compress command, including the command itself?

Why does the program ignore the num_threads and outfmt value given by me (see below) ? Should every individual parameter be preceded by --blast-args ?

A search in compressed space actually involves two invocations of blast. First is a blast search against the compressed database, which always uses a particular output format so that it can be read by cablastp-search. The second blast search is on the expanded hits from the first search, and that invocation of blast will use your parameters to --blast-args verbatim. But since your search is failing on the first invocation, you're seeing the results of the compressed blast search, which won't include the --blast-args.

However, it is a bug that -num_threads is set to 16. It should probably be set to the value of the -p flag. I've filed a new issue #4.

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

No branches or pull requests

2 participants