usegalaxy-no / galaxyadmin

A repository for managing the work of the usegalaxy.no GalaxyAdmin team
0 stars 0 forks source link

RESM tool fails #40

Open ehj000 opened 3 years ago

ehj000 commented 3 years ago

The RSEM prepare reference is failing with this error: /data/part0/tmp/jobs/028/28690/tool_script.sh: 9: /data/part0/tmp/jobs/028/28690/tool_script.sh: rsem-prepare-reference: not found Could someone please check that the tool is installed and why galaxy can't find it?

torfinnnome commented 3 years ago

Could you share some input data for this tool, so I can debug?

ehj000 commented 3 years ago

The same user reports an error using feature counts: /data/part0/tmp/jobs/028/28682/tool_script.sh: featureCounts: not found

ehj000 commented 3 years ago

I have shared the history with you in usegalaxy (named RT15023)

ehj000 commented 3 years ago

The user is asking if we have made any progress on this. I have tried to re-run the tool, and it still fails but with a different error: Unable to finish job

torfinnnome commented 3 years ago

Sorry, I have very limited time to work on usegalaxy.no these days.

ehj000 commented 3 years ago

Sorry to "mase" but the user has asked if we are able to make any progress. Is there anyone beside Torfinn that can have a look at why the RSEM tool is failing with the cryptic: tool error An error occurred with this dataset: Unable to finish job

kjellp commented 3 years ago

Could the history be shared on the server, then more people in the GalaxyAdmin can take a look?

ehj000 commented 3 years ago

Of course. You can import this: https://usegalaxy.no/u/bf52c02868d747c5b784466753839ed6/h/rt15023

kjellp commented 3 years ago

I reran the jobs and found the following error in the galaxy log:

RSEM_error_in_galaxy_log

A quick search confirmed my suspicion that this is related to python2 code being executed in python3: Google search results

To me it seems to be the main galaxy code dealing with tool wrappers that is failing to receive the ready results from the tool itself? The tool runs for some time before it errors.

ehj000 commented 3 years ago

@torfinn: Did you have the chance to test the tool on test. I only find the same version as on prod, and the RSEM tool fails with the error we got first try on prod. The error appears very quickly, so I don't think the job starts at all

/data/part0/tmp/jobs/000/428/tool_script.sh: 9: /data/part0/tmp/jobs/000/428/tool_script.sh: rsem-prepare-reference: not found

torfinnnome commented 3 years ago

RSEM prepare reference might work now. I assume there are other tools in the RSEM package that is needed too?

I'm not a great fan of this (it's using bowtie1, for one, and should be rewritten to use modern software), but I picked the oldest versions of the required tools that I could find in Conda. So, strongly not recommended to use this tool. But if strictly required, this made it run:

$ pwd
/srv/galaxy/var/shed_tools/toolshed.g2.bx.psu.edu/repos/jjohnson/rsem_datatypes/77151afcd323/rsem_datatypes/
$ diff -uN rsem.py.orig rsem.py
--- rsem.py.orig    2021-03-08 11:33:59.426914887 +0100
+++ rsem.py 2021-03-08 11:34:21.444735867 +0100
@@ -111,7 +111,7 @@
         if len(rvalb) > 0:
             rval += rvalb
         rval.append( '</ul></body></html>' )
-        fh = file(dataset.file_name,'w')
+        fh = open(dataset.file_name,'w')
         fh.write("\n".join( rval ))
         fh.write('\n')
         fh.close()

and:

$ pwd
/srv/galaxy/var/shed_tools/toolshed.g2.bx.psu.edu/repos/jjohnson/rsem/14267d364365/rsem
$diff -uN orig/rsem_prepare_reference.xml rsem_prepare_reference.xml
--- orig/rsem_prepare_reference.xml 2021-03-08 13:32:10.215216841 +0100
+++ rsem_prepare_reference.xml  2021-03-08 10:46:17.954215295 +0100
@@ -1,8 +1,9 @@
 <tool id="rsem_prepare_reference" name="RSEM prepare reference" version="1.1.17">
   <description></description>
   <requirements>
-    <requirement type="package" version="1.1.17">rsem</requirement>
-    <requirement type="package" version="1.0.0">bowtie</requirement>
+    <requirement type="package" version="1.2.28">rsem</requirement>
+    <requirement type="package" version="1.1.2">bowtie</requirement>
+    <requirement type="package" version="5.32.0">perl</requirement>
   </requirements>
   <command>
     echo $reference_name " " | tee $reference_file &amp;&amp;