Database was built with a newer version of Diamond and is incompatible.

Marimikel

New member
I am running the cat command on a collection of .faa files to combine then and then use MakeDB to make a database from this protein information. This appeared to work fine. Next I tried running Blastp with the previous made database and a FASTA file from Uniprot for the query. However, I get the error "Database was built with a newer version of Diamond and is incompatible."

I've tried checking for Diamond updates in Conda (currently on v0.9.35.136). I deleted a previously made database and recreated it. The error persists.

Do you have any insight? Thank you!
 

Benjamin Buchfink

Administrator
Staff member
Please double check that you are using the same version for each call to diamond using diamond version. Also use diamond dbinfo -d <db_file> to check the database format version, it should be 3 for the latest version.
 

Marimikel

New member
Thank you so much for your fast reply!!!

I followed your instructions regarding `diamond dbinfo` and this is what the result was:

Database format version = 2308
Diamond build = 4278649378
Sequences = 3100698556235776
Letters = 3851939154493440


I am not quite understanding how to use the `diamond version` in the call. Can you give more information, please?

Right now I am running the following commands on the command line:

`cat /path/to/dataset/*/protein.faa | diamond makedb -d /path/to/db/output/ORF_db --taxonmap /path/to/readin/taxonomy/information/prot.accession2taxid.gz --taxonnames /path/to/read/in/another/taxonomy/file/names.dmp -v`

After that, I am trying to run:

`diamond blastp -d /path/to/db/output/ORF_db.dmnd -q /path/to/alignment/file/uniref-kpsc+AND+identity0.9.fasta.gz -o /path/to/save/output/test.m8 -f 6 qseqid sseqid staxids sscinames pident length mismatch gapopen qstart qend sstart send evalue bitscore sseq qseq --min-score 50`

When I run both of the above commands one after another, in both instances the command line prints to standard out this information about the version:
`diamond v0.9.35.136 (C) Max Planck Society for the Advancement of Science`

However, the second command fails with the error I mentioned.

Given the above, is there an additional command line argument to either check the version, or explicitly specify which version of `diamond` to run?
 

Marimikel

New member
Hello again,

I removed diamond from conda and compiled from source (v0.9.35.136) but the error still persists. Here is the database format version:

Database format version = 2308
Diamond build = 4278649378
Sequences = 3100698556235776
Letters = 3851939154493440
 

Marimikel

New member
Thank you, that corrected the error and I was able to perform the blastp.

However, if I use the sscinames keyword after -f 6, I get the error 'unexpected end of input.' All other keywords I've tried appear to work just fine.
 
Top