Hi Nate,
Thanks for the quick response, it gave me the lightbulb I needed. I did the following:
On the cluster side, I custom installed python libraries based on the instructions in
“Framework dependencies.” This was placed in the Galaxy directory, but there would’ve
been access to OS specific libraries. Then, I created a vm-specific directory, and also
installed libraries there via virtualenv. In job_conf, I added a line to force use of the
Galaxy directory venv. Before starting Galaxy with the –no-create-env and –skip-wheels
flags, I set GALAXY_VIRTUAL_ENV explicitly to look in the vm-specific venv directory
(export GALAXY_VIRTUAL_ENV=”/galaxy/venv” && sh run.sh). This did the trick. A
job was successfully returned from the cluster and metadata properly set. My only
question would be, are any of these steps not necessary?
Thanks for your help!
From: Nate Coraor <nate(a)bx.psu.edu>
Date: Monday, January 29, 2018 at 7:33 AM
To: John Letaw <letaw(a)ohsu.edu>
Cc: galaxy-dev <galaxy-dev(a)lists.galaxyproject.org>
Subject: Re: [galaxy-dev] Cluster Install Path Errors
Hi John,
Can you verify that your virtualenv created on the cluster is the one being used by jobs?
It should be possible to view using a test job's script file, the path to which is
logged at run time.
Thanks,
--nate
On Mon, Jan 29, 2018 at 1:00 AM, John Letaw
<letaw@ohsu.edu<mailto:letaw@ohsu.edu>> wrote:
Hi Nate,
I tried to get this to work, but it is not getting rid of the error. I was able to
symlink the platform dependent lib-dynload libraries to a recognized directory, which
removed the error telling me _hashlib was not found. Now, I’m just left with:
galaxy.jobs.output_checker DEBUG 2018-01-28 21:50:36,883 Tool produced standard error
failing job - [Could not find platform dependent libraries <exec_prefix>
Consider setting $PYTHONHOME to <prefix>[:<exec_prefix>]
]
Maybe, as Cao suggested, I should just be installing a common version in the shared
directory between the two filesystems. The job is correctly being scheduled and
completes, metadata is just not written. I’m certainly open to any additional ideas.
Thanks,
John
From: Nate Coraor <nate@bx.psu.edu<mailto:nate@bx.psu.edu>>
Date: Thursday, January 18, 2018 at 1:12 PM
To: Cao Tang <charlietang98@gmail.com<mailto:charlietang98@gmail.com>>
Cc: John Letaw <letaw@ohsu.edu<mailto:letaw@ohsu.edu>>, galaxy-dev
<galaxy-dev@lists.galaxyproject.org<mailto:galaxy-dev@lists.galaxyproject.org>>
Subject: Re: [galaxy-dev] Cluster Install Path Errors
I think this error most commonly occurs when a virtualenv is used with a different python
than the one it was created with. Is the cluster also running Ubuntu 14.04? If not, you
can create a separate virtualenv for running tools using the instructions at:
https://docs.galaxyproject.org/en/master/admin/framework_dependencies.htm...
Once created, your tools can use it by setting `<param
id="GALAXY_VIRTUAL_ENV">/path/to/venv</param>` on the destination in
job_conf.xml
--nate
On Thu, Jan 18, 2018 at 1:50 PM, Cao Tang
<charlietang98@gmail.com<mailto:charlietang98@gmail.com>> wrote:
You can try to install:
https://pypi.python.org/pypi/hashlib
On Thu, Jan 18, 2018 at 1:22 PM, John Letaw
<letaw@ohsu.edu<mailto:letaw@ohsu.edu>> wrote:
Thanks for the response Peter. I currently have this instance installed on a lustre fs,
that is visible on an Ubuntu 14.04 vm. So, there very well may be mismatches between
directories on the VM, and those on the lustre cluster. This would mean the python
installation on the VM needs to exactly match that which is on the cluster? What else
will need to match to ensure success?
Thanks,
John
On 1/18/18, 1:50 AM, "Peter Cock"
<p.j.a.cock@googlemail.com<mailto:p.j.a.cock@googlemail.com>> wrote:
I *think* this is a problem with your copy of Python 2.7 and a
standard library (hashlib) normally present. Do you know how this
Python was installed? If it was compiled from source, then it may have
been missing a few dependencies, and thus you have ended up with
missing a few normally present Python modules.
Peter
On Wed, Jan 17, 2018 at 11:15 PM, John Letaw
<letaw@ohsu.edu<mailto:letaw@ohsu.edu>> wrote:
Hi all,
I have been trying to finish up a production cluster Galaxy installation,
and am having trouble with the below error. In the past, when seeing
something along these lines, I usually can adjust environmental variables
either in startup scripts, or by including a script for Galaxy to source
before it sends out a job. I have tried all of these different methods, but
I can’t seem to get rid of this error message in any tool invocation. I
currently have “embed_metadata_in_job” set to False in my job_conf.xml file.
This removes a “No module named galaxy_ext.metadata.set_metadata” error, but
this hashlib error remains. If I could understand a little more about the
steps that are taken when sending out a job, perhaps I could better diagnose
this?
“””
Could not find platform dependent libraries
Consider setting $PYTHONHOME to [:]
Traceback (most recent call last):
File "~/galaxydev/galaxy/tools/data_source/upload.py", line 14, in
import tempfile
File "/usr/lib64/python2.7/tempfile.py", line 35, in
from random import Random as _Random
File "/usr/lib64/python2.7/random.py", line 49, in
import hashlib as _hashlib
File "/usr/lib64/python2.7/hashlib.py", line 116, in
import _hashlib
ImportError: No module named _hashlib
“””
Thanks,
John
___________________________________________________________
Please keep all replies on the list by using "reply all"
in your mail client. To manage your subscriptions to this
and other Galaxy lists, please use the interface at:
https://lists.galaxyproject.org/
To search Galaxy mailing lists use the unified search at:
http://galaxyproject.org/search/
___________________________________________________________
Please keep all replies on the list by using "reply all"
in your mail client. To manage your subscriptions to this
and other Galaxy lists, please use the interface at:
https://lists.galaxyproject.org/
To search Galaxy mailing lists use the unified search at:
http://galaxyproject.org/search/
___________________________________________________________
Please keep all replies on the list by using "reply all"
in your mail client. To manage your subscriptions to this
and other Galaxy lists, please use the interface at:
https://lists.galaxyproject.org/
To search Galaxy mailing lists use the unified search at:
http://galaxyproject.org/search/