-
Notifications
You must be signed in to change notification settings - Fork 11
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Export LD_LIBRARY_PATH
in the job_script_prologue
by default
#40
Comments
I actually think the second one is best cause if the user specifies a different |
I'm rather reluctant to modify the library path globally. Do we have any indication what the difference is between worker and client environment? |
It seems that the client and worker disagree about which image they are using, because the ldd output from def baz():
import subprocess
path = "/usr/local/lib/python3.10/site-packages/awkward_cpp/lib/libawkward.so"
return subprocess.getoutput(f"ldd -v {path}")
print(baz())
print("="*30)
for k, v in client.run(baz).items():
print(k)
print(v) includes
on the client side and
on the worker side. It turns out that what is happening is the symlink |
.. or not. Even though return subprocess.getoutput(f"md5sum {path}") returns different values:
the realpath of the image: return subprocess.getoutput(f"realpath /cvmfs/unpacked.cern.ch/registry.hub.docker.com/coffeateam/coffea-dask-almalinux8:latest") returns the same:
|
Ah nevermind, I think it was a stale file handle on the client. Restarting the |
Thanks for the checks Nick. Yeah I also saw this difference in the |
If a package that requires newer
libstdc++
is installed viapip
in thecoffea
images, then ONLY in the workers, the library path resolution points to/lib64/libstdc++.so.6:
instead of the newer one that is installed via conda under/usr/loca/lib
.Therefore you will get this in the workers:
cause from som reason the library path resolution of the workers is differently.
Therefore the user would need to add
job_script_prologue=["export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH"]
in the cluster setup.It may be a good idea to add it ourselves by default. One option is to add it under:
lpcjobqueue/src/lpcjobqueue/config.yaml
Line 27 in eeb7768
job_script_prologue
list no matter what else the user wants to specify there.The text was updated successfully, but these errors were encountered: