endixk / ezaai

EzAAI - High Throughput Prokaryotic AAI Calculator
http://leb.snu.ac.kr/ezaai
GNU General Public License v3.0
34 stars 3 forks source link

Error creating database #2

Open cliffbueno opened 3 years ago

cliffbueno commented 3 years ago

Hello,

I am unable to see a .db file created using either extract or convert. I set up the same sample folder as the tutorial, with 10 of my genomes in the fasta folder.

java -jar EzAAI_latest.jar extract -i fasta/MAG_48_Clean_2N.fa -o db/MAG_48_Clean_2N.db -l "Methanolobus sp. SBSPR1" EzAAI |: EzAAI - v1.0 [Mar. 2021] EzAAI |: Running prodigal on genome fasta/MAG_48_Clean_2N.fa... getEngineName() called getEngineName() called EzAAI |: Converting given CDS file into profile database... (fasta/MAG_48_Clean_2N.fa.faa -> db/MAG_48_Clean_2N.db) EzAAI |: Task finished.

It all looks like it worked well. But then when I check the db/ folder, there is no MAG_48_Clean_2N.db file. Same thing happened when I ran prodigal manually outside of EzAAI to make a protein CDS file and tried to convert it to the .db

It seems like the issue is the getEngineName() called, as I do not see that in the tutorial.

If it helps here is my java info. java version "15.0.1" 2020-10-20 Java(TM) SE Runtime Environment (build 15.0.1+9-18) Java HotSpot(TM) 64-Bit Server VM (build 15.0.1+9-18, mixed mode, sharing)

Please let me know if you have any suggestions. Thanks!

endixk commented 3 years ago

Hi, sorry for the delayed response.

Looks like the program ran without problem. Prompt about getEngineName() itself did not cause problems in other cases.

Probably, writing permission of your system could be an issue. Please try running the same script with root account if possible. If not, please check the writing permission of your db/ directory and run after granting permission.

If this does not work, please run the identical script with -dev argument and send the copy of printed result to endix1029@gmail.com.

Thank you, and sorry for the inconvenience.

tjojima commented 3 years ago

Hi Thank you for your good program! I got the same error as cliffbueno. Program seemed to run without error, but no file was created in the db folder. Below is a result with -dev argument: [JUN 21 21:04:33] EzAAI |: EzAAI - v1.0 [Mar. 2021] [JUN 21 21:04:33] DEV |: EzAAI - extract module [JUN 21 21:04:33] EzAAI |: Running prodigal on genome fasta/Cn.fasta... [JUN 21 21:04:47] EzAAI |: Creating a submodule for converting .faa into .db profile... [JUN 21 21:04:47] DEV |: EzAAI - convert module [JUN 21 21:04:47] EzAAI |: Converting given CDS file into profile database... (fasta/Cn.fasta.faa -> db/Cn.db) [JUN 21 21:04:48] EzAAI |: Conversion finished. [JUN 21 21:04:48] EzAAI |: Task finished.

Permission of the db folder is drwxrwxrwx@. I would appreciate any advice.

endixk commented 3 years ago

Hello! The error might be related to the MMSeqs2 createdb module, supposedly. Make sure your mmseqs binary is properly installed and registered on your $PATH variable.

I have just updated the program into version 1.1. Download -dev argument will now print out more detailed information about its command line accesses.

Please run your task with the updated program, and check whether the same issue occurs. If so, please send me the copy of printed result once again.

Thanks!

tjojima commented 3 years ago

Hi! Thank you very much for your quick reply. I ran version 1.1 and the same issue still occurred. Below is a result of with -dev argument: [JUL 06 21:28:29] EzAAI |: EzAAI - v1.1 [Jul. 2021] [JUL 06 21:28:29] DEV |: EzAAI - extract module [JUL 06 21:28:29] EzAAI |: Running prodigal on genome fasta/Cn.fasta... [JUL 06 21:28:30] DEV |: COMMAND: prodigal -i fasta/Cn.fasta -f gff -o /tmp/prodigal.gff -a /tmp/prodigal.faa -d /tmp/prodigal.ffn -q -p meta -g 11 [JUL 06 21:28:43] EzAAI |: Creating a submodule for converting .faa into .db profile... [JUL 06 21:28:43] DEV |: EzAAI - convert module [JUL 06 21:28:43] EzAAI |: Converting given CDS file into profile database... (/tmp/prodigal.faa -> db/Cn.db) [JUL 06 21:28:44] DEV |: COMMAND: mmseqs createdb /tmp/cba375238ddfb4e7.faa /tmp/mm [JUL 06 21:28:44] DEV |: Writing file /tmp/mm.label [JUL 06 21:28:44] DEV |: COMMAND: tar --remove-files -c -z -f cba375238ddfb4e7.db mm mm.dbtype mm.index mm.lookup mm.source mm_h mm_h.dbtype mm_h.index mm.label [JUL 06 21:28:44] DEV |: COMMAND: mv /tmp/cba375238ddfb4e7.db db/Cn.db [JUL 06 21:28:44] EzAAI |: Conversion finished. [JUL 06 21:28:44] EzAAI |: Task finished.

I created a virtual environment for ezaai and installed mmseqs2 and prodigal with conda, and no path set (I'm sorry if it's a rudimentary mistake).
I would appreciate any advice.

EmileFaure commented 2 years ago

Hello !

I am trying to debug the same problem for a colleague, launching the command in dev mode gave me this:

[NOV 22 17:49:43] EzAAI   |:  EzAAI - v1.1 [Jul. 2021]
[NOV 22 17:49:43] DEV     |:  EzAAI - extract module
[NOV 22 17:49:43] EzAAI   |:  Running prodigal on genome fasta/Cn.fasta...
getEngineName() called
getEngineName() called
[NOV 22 17:49:43] DEV     |:  COMMAND: prodigal -i fasta/Cn.fasta -f gff -o /tmp/prodigal.gff -a /tmp/prodigal.faa -d /tmp/prodigal.ffn -q -p meta -g 11 
[NOV 22 17:49:54] EzAAI   |:  Creating a submodule for converting .faa into .db profile...
[NOV 22 17:49:54] DEV     |:  EzAAI - convert module
[NOV 22 17:49:54] EzAAI   |:  Converting given CDS file into profile database... (/tmp/prodigal.faa -> db/Cn.db)
[NOV 22 17:49:55] DEV     |:  COMMAND: mmseqs createdb /tmp/ab765f0b4803caa2.faa /tmp/mm 
[NOV 22 17:49:55] DEV     |:  Writing file /tmp/mm.label
[NOV 22 17:49:55] DEV     |:  COMMAND: tar --remove-files -c -z -f ab765f0b4803caa2.db mm mm.dbtype mm.index mm.lookup mm.source mm_h mm_h.dbtype mm_h.index mm.label 
[NOV 22 17:49:55] DEV     |:  COMMAND: mv /tmp/ab765f0b4803caa2.db db/Cn.db 
[NOV 22 17:49:55] EzAAI   |:  Conversion finished.
[NOV 22 17:49:55] EzAAI   |:  Task finished.

I tried launching the steps manually and prodigal and mmseqs ran smoothly, however I had an issue at the tar step: tar: Option --remove-files is not supported

This was on a mac OS X v10.14.6. I did not find a way to get tar to accept this flag on the machine.

endixk commented 2 years ago

Sorry for the way delayed response. I was completely distracted by some other issues for a while.

The problem of not creating DB file happened in macOS environment, since macOS tar indeed does not have --remove-files flag.

I uploaded a new version (v1.11) of EzAAI on the website by applying alternative method using rm directly instead of using tar --remove-files flag.

New version can be downloaded using following link: Download

My apologies for the delay and thank you for your patience.

neelam19051 commented 2 years ago

Hi, I am trying to run EZAAI and it doesn't create a db output directory, can you help me please as well as will you help me to know how to use this tool for large datasets.

java -jar 'EzAAI(3).jar' extract -i /home/bvs/neelam/genome/fna/*.fna -o database/Ps.db -l "Pseudomonas aeruginosa" [MAR 21 18:38:19] EzAAI |: EzAAI - v1.2 [Mar. 2022] [MAR 21 18:38:19] EzAAI |: Running prodigal on genome /home/bvs/neelam/genome/fna/P_aeruginosa_12-4-4_59.fna... [MAR 21 18:39:42] EzAAI |: Converting given CDS file into profile database... (/home/bvs/neelam/genome/fna/P_aeruginosa_12-4-4_59.fna.faa -> database/Ps.db) [MAR 21 18:39:42] EzAAI |: Task finished.

Thank you(감사합니다)!

endixk commented 2 years ago

Hi @neelam19051,

Currently our program does not support UNIX wildcard (*, ?) inputs as an arguments. Therefore, a database file can only be made using a single FASTA file.

If you intend to create databases for every FASTA file in your directory, you should provide one command for each FASTA file using different database names.

For details, please check the tutorial page for the extract module from this website.

Thanks!

neelam19051 commented 2 years ago

Hi @neelam19051,

Currently our program does not support UNIX wildcard (*, ?) inputs as an arguments. Therefore, a database file can only be made using a single FASTA file.

If you intend to create databases for every FASTA file in your directory, you should provide one command for each FASTA file using different database names.

For details, please check the tutorial page for the extract module from this website.

Thanks!

The problem is it didn't create output file.

endixk commented 2 years ago

I mean, you should not use the wildcard in your command, and that is the probable reason why the output file is not created.

From the command you've posted, /home/bvs/neelam/genome/fna/*.fna contains a wildcard (*), which makes program be confused with the input.

If you keep having trouble with the output problem, please send me the full output log of the program using the -dev option. Also, please let me know the system environment you are running the program with.

Thank you and sorry for the inconvenience.