genouest / biomaj2galaxy Goto Github PK
View Code? Open in Web Editor NEWBioMAJ post processes to manipulate Galaxy tool data tables
License: MIT License
BioMAJ post processes to manipulate Galaxy tool data tables
License: MIT License
Hi,
I got the following error running biomaj2galaxy :
File "/storage/galaxydev/biomaj/venv/lib/python2.7/site-packages/biomaj2galaxy/commands/add.py", line 204, in add
ctx.gi.tool_data.delete_data_table('dbkeys', "\t".join(dbkey_entry))
TypeError: can only join an iterable
that is produced on one new genome otherwise it is working well with previous genomes until we moved to galaxy 19.05.
This is solved by adding a conditional code before the for loop :
`
if not need_dbkey:
for c in table_counts.keys():
need_dbkey = 'dbkey' in tables_format[c]
if need_dbkey:
break
`
This modification doesn't break on other genomes.
However, I am not sure to understand how the code is behaving and why the error "appears" for that genome only and not the others...
I would be pleased to hear if you have some explanation.
Cheers,
Hi @abretaud,
Hope you're doing well!
Not sure if I post the issue at the right place ... let me know, if I should post somewhere else like data_manager_manual or bioblend github ?
We are using Galaxy 19.09, a postgreSQL DB and the last biomaj2galaxy release.
When running bioMAJ with properties file containing biomaj2galaxy, I got the following log error :
...
PROCESS:ERROR:GAL_dm_galaxy_dm
INFO [root][Thread-37] PROCESS:EXEC:GAL_dm_galaxy_dm:False
DEBUG [root][Thread-37] Process:progress:GAL_dm_galaxy_dm=False
DEBUG [root][MainThread] Meta threads are over
ERROR [root][MainThread] Error during task postprocess
...
GAL_dm_galaxy_dm.err file end up with :
File \\"lib/galaxy/web/framework/decorators.py\\", line 282, in decorator\\n
rval = func(self, trans, *args, **kwargs)\\n
File \\"lib/galaxy/webapps/galaxy/api/jobs.py\\", line 135, in show\\n
job = self.__get_job(trans, id)\\n
File \\"lib/galaxy/webapps/galaxy/api/jobs.py\\", line 135, in show\\n
job = self.__get_job(trans, id)\\n
File \\"lib/galaxy/webapps/galaxy/api/jobs.py\\", line 475, in __get_job\\n
return self.job_manager.get_accessible_job(trans, decoded_job_id)\\n
File \\"lib/galaxy/managers/jobs.py\\", line 56, in get_accessible_job\\n
raise ObjectNotFound()\\nObjectNotFound: No such object found.\\n"
"err_msg": "No such object found.", "err_code": 404001}', 0 attempts left: {"traceback": "Traceback (most recent call last):\n
File \"lib/galaxy/web/framework/decorators.py\", line 282, in decorator\n
rval = func(self, trans, *args, **kwargs)\n
File \"lib/galaxy/webapps/galaxy/api/jobs.py\", line 135, in show\n
job = self.__get_job(trans, id)\n
File \"lib/galaxy/webapps/galaxy/api/jobs.py\", line 475, in __get_job\n
return self.job_manager.get_accessible_job(trans, decoded_job_id)\n
File \"lib/galaxy/managers/jobs.py\", line 56, in get_accessible_job\n
raise ObjectNotFound()\nObjectNotFound: No such object found.\n"
"err_msg": "No such object found.", "err_code": 404001}
Part of my properties file look like this :
...
#Post-process configuration for BIOMAJ2GALAXY using data manager and data libraries
GALAXY.db.post.process=GAL_dm,GAL_dl_gff3,GAL_dl_gtf
GAL_dm=galaxy_dm
galaxy_dm.name=galaxy_dm
galaxy_dm.desc=Add files to Galaxy tool data tables
galaxy_dm.type=galaxy
galaxy_dm.exe=biomaj2galaxy
galaxy_dm.args=-v -f /storage/galaxyprod/.bm2g.yml add -d "${localrelease}" -n "ensembl triticum aestivum (${remoterelease})" --no-file-check -g fasta/all.fasta bowtie2:bowtie2/all twobit:2bit/all.2bit bwa:bwa/all bwa_mem:bwa/all star:star/all "hisat2:hisat2/all/${db.name}" "blastdb:blast/dna/${db.name}_dna:ensembl triticum aestivum dna" "blastdb:blast/cdna/${db.name}_cdna:ensembl triticum aestivum cdna" "blastdb_p:blast/pep/${db.name}_pep:ensembl triticum aestivum pep"
galaxy_dm.cluster=false
...
We have tried restarting Galaxy and Postgres services, modifications on Galaxy server in config/galaxy.yml like
threads: 8 -> 1
offload-threads:8 -> 1
but that didn't solve the problem.
Any suggestions are very welcome.
All the best,
Hi, as shown in the following full dependency graph of biomaj2galaxy, bioblend requires requests >=2.20.0 , while the installed version of requests-toolbelt(0.9.1) requires requests >=2.0.1,<3.0.0.
According to Pip's “first found wins” installation strategy, requests 2.22.0 is the actually installed version.
Although the first found package version requests 2.22.0 just satisfies the later dependency constraint (requests >=2.0.1,<3.0.0), it will lead to a build failure once developers release a newer version of requests.
biomaj2galaxy - 2.0.1
| +- bioblend(install version:0.13.0 version range:*)
| | +- boto(install version:2.49.0 version range:>=2.9.7)
| | +- pyyaml(install version:5.2b1 version range:*)
| | +- requests(install version:2.22.0 version range:>=2.20.0)
| | | +- certifi(install version:2019.9.11 version range:>=2017.4.17)
| | | +- chardet(install version:3.0.4 version range:<3.1.0,>=3.0.2)
| | | +- idna(install version:2.8 version range:>=2.5,<2.9)
| | | +- urllib3(install version:1.25.7 version range:<1.26,>=1.21.1)
| | +- requests-toolbelt(install version:0.9.1 version range:>=0.5.1)
| | | +- requests(install version:2.22.0 version range:>=2.0.1,<3.0.0)
| | | | +- certifi(install version:2019.9.11 version range:>=2017.4.17)
| | | | +- chardet(install version:3.0.4 version range:<3.1.0,>=3.0.2)
| | | | +- idna(install version:2.8 version range:>=2.5,<2.9)
| | | | +- urllib3(install version:1.25.7 version range:<1.26,>=1.21.1)
| | +- six(install version:1.13.0 version range:*)
| +- click(install version:7.0 version range:*)
| +- future(install version:0.18.2 version range:*)
Thanks for your attention.
Best,
Neolith
Hi,
I am using latest BioMAJ and BioMAJ2 Galaxy versions and Galaxy v18.05.
For example, Anopheles_gambiae.properties looks like:
bwa.name=bwa
bwa.desc=Build bwa index
bwa.type=index
bwa.exe=bwa.sh
bwa.args="fasta/all.fasta" "bwa/all"
bwa.cluster=false
makeblastdb.name=makeblastdb
makeblastdb.desc=Index blast
makeblastdb.type=index
makeblastdb.args="fasta/all.fasta" "blast/" "-dbtype nucl -parse_seqids" ${db.name}
makeblastdb.cluster=false
makeblastdb.exe=makeblastdb.sh
makeblastdb_p.name=makeblastdb_p
makeblastdb_p.desc=Index blast protein
makeblastdb_p.type=index
makeblastdb_p.args="fasta/protein.faa" "blast/protein/" "-dbtype prot -parse_seqids" ${db.name}_protein
makeblastdb_p.cluster=false
makeblastdb_p.exe=makeblastdb.sh
GALAXY.db.post.process=GAL
GAL=galaxy_dm
galaxy_dm.desc=Add files to Galaxy tool data tables
galaxy_dm.type=galaxy
galaxy_dm.exe=biomaj2galaxy
galaxy_dm.args=-v -f /xxx/.bm2g.yml add -d "${localrelease}" -n "Anopheles gambiae NCBI (${remoterelease})" --no-file-check -g fasta/all.fasta bowtie2:bowtie2/all twobit:2bit/all.2bit bwa:bwa/all star:star/all hisat2:hisat2/all "blastdb:blast/Anopheles_gambiae:Anopheles gambiae" "blastdb:blast/Anopheles_gambiae_protein:Anopheles gambiae protein"
bwa.loc file:
Anopheles_gambiae_AgamP3 Anopheles_gambiae_AgamP3 Anopheles gambiae NCBI (AgamP3) /xxx/ncbi/genomes/Anopheles_gambiae/Anopheles_gambiae_AgamP3/bwa/all
blastdb.loc file:
Anopheles_gambiae_AgamP3_fe811f3f-a610-4edb-82ab-ae6986a90aba Anopheles gambiae /xxx/ncbi/genomes/Anopheles_gambiae/Anopheles_gambiae_AgamP3/blast/Anopheles_gambiae
Anopheles_gambiae_AgamP3_da956145-59ac-4ad9-a7a7-b2687b32f735 Anopheles gambiae protein /xxx/ncbi/genomes/Anopheles_gambiae/Anopheles_gambiae_AgamP3/blast/Anopheles_gambiae_protein
BioMAJ went through the update but bwa and blast indexes are not accessible through galaxy interface (bowtie2, star and Hisat2 are fine).
Would you have hints where to dig ... ?
Thanks,
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.