However I am repeatedly getting the following error during the hcp_freesurfer pipeline:
(...)
running: /opt/freesurfer/freesurfer/mni/bin/nu_estimate_np_and_em -parzen -log -sharpen 0.15 0.01 -iterations 1000 -stop 0.001 -shrink 4 -auto_mask -nonotify -b_spline 1.0e-7 -distance 50 -quiet -execute -clobber -nokeeptmp -tmpdir ./tmp.mri_nu_correct.mni.2862674/0/ ./tmp.mri_nu_correct.mni.2862674/nu0.mnc ./tmp.mri_nu_correct.mni.2862674/nu1.imp
Assertion failed at line 742 in file templates/CachedArray.cc
nu_estimate_np_and_em: crashed while running volume_stats (termination status=256)
nu_correct: crashed while running nu_estimate_np_and_em (termination status=256)
ERROR: nu_correct
Linux dccn-c084.dccn.nl 4.18.0-553.8.1.el8_10.x86_64 #1 SMP Tue Jul 2 07:26:33 EDT 2024 x86_64 GNU/Linux
recon-all -s EC2129_2A exited with ERRORS at Thu Jul 25 22:52:24 CEST 2024
(...)
I thought this might be an issue of a faulty configuration of the container environment (despite --cleanenv being called by default) so I tried deleting all paths to Freesurfer, FSL etc from my local environment. Also, tried the reverse: binding my local software to the containers’ environment with e.g.:
Thank you for the quick reply! I tried both options and some more things, but it all does not seem to work.
I thought it might help to re-install qunex from source. However the Clone: git clone https://gitlab.qunex.yale.edu/qunex/qunex.git does not work anymore. Would you now a way to install qunex from source?
Do you happen to have the TMPDIR environment variable set somewhere in you bash profile / bashrc? We are starting the container with cleanenv flag but bashrc is still loaded by singularity. The reason I’m asking is that I tracked the assertion failure down to these internal functions.
First about the installation from source:
I have tried both options to install from source but I get the following error without ssh key:
fatal: repository 'https://gitlab.qunex.yale.edu/qunex/qunex.git/' not found
And with the ssh key:
Permanently added 'gitlab.qunex.yale.edu,54.82.210.93' (ECDSA) to the list of known hosts.
remote:
remote: ========================================================================
remote:
remote: The project you were looking for could not be found or you don't have permission to view it.
remote:
remote: ========================================================================
remote:
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
Would you know what is going on there?
Also, about the nu_correct error:
Looking at the fmriprep post, I cannot find a clear environmental variable that has been set incorrectly. Also I do not set the TMPDIR in my bashsrc.
My bashrc looks like:
# Change to homedir
cd -L
# Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
I even tried to run it from a shell session with only the $HOME and the singularity directories in the environment. That still gave the same error. So if you have any more ideas I would be glad to hear it!
Can you try git clone on your local machine? It seems like the server you are on is somehow blocking your access to our GitLab server. I tested both commands (https and ssh) on a couple of systems and they always worked …
I am sorry for not replying sooner!
This week I picked up the project again, and I think I found a solution.
Adding container_command += "--writable-tmpfs " to the “qunex_container” script did the trick eventually and the container is now running smoothly.