Unicode error nipype eddy

Summary of what happened:

Hi, I am experiencing a unicode error, and I’ve checked the other simillar issues posted here, but I am not able to find a solution to my particular problem. I really appreciate if someone can help with my situation.

I have a singularity container that runs on a HPC cluster. The container runs without incident in singularity, however, when the singularity container is run within a web-based app (which uses django), I get the following error:

buf = os.read(fd, 4096).decode(self.default_encoding)

UnicodeDecodeError: ‘utf-8’ codec can’t decode byte 0xe1 in position 3: invalid continuation byte

Command used (and if a helper script was used, a link to the helper script or the command generated):

This is the runtime command:

eddy_cuda --flm=quadratic --ff=10.0 --acqp=/out/acq_params_allN.txt --bvals=/out/bvals.txt --bvecs=/out/bvecs.txt --imain=/out/dti_alldataN.nii.gz --index=/out/index_eddy_allN.txt --mask=/out/skull_strip/allb0_imagesN_corrected_mean_brain_mask.nii.gz --topup=/out/topup/allb0_imagesN_base --interp=spline --resamp=jac --mporder=6 --niter=8 --nvoxhp=1000 --out=/out/eddy/eddy_corrected --repol --s2v_interp=trilinear --s2v_lambda=1 --s2v_niter=5 --slspec=/input/UTD_default_slspec.txt --slm=none
I am posting here because nipype is reporting the error. I am unable to find the offending file, and I don’t see any hidden files in any of the directories.


I’m running fsl-6.0.6, nipype-1.8.6, and singularity-ce-3.10.2. The error comes from python3.7 and I upgraded to python3.8, which results in a similar error.

Environment (Docker, Singularity, custom installation):

This is run in a singularity container with an ubuntu base (18.04) and cuda 10.2 libraries. The HPC servers run ubuntu 20.04

Data formatted according to a validatable standard? Please provide the output of the validator:

Relevant log outputs (up to 20 lines):

Here is more information on the error itself:

File "/computation/eddy.py", line 132, in run_pipeline
  File "/opt/miniconda/envs/default/lib/python3.7/site-packages/nipype/pipeline/engine/nodes.py", line 516, in run result = self._run_interface(execute=True)
  File "/opt/miniconda/envs/default/lib/python3.7/site-packages/nipype/pipeline/engine/nodes.py", line 635, in _run_interface
    return self._run_command(execute)
  File "/opt/miniconda/envs/default/lib/python3.7/site-packages/nipype/pipeline/engine/nodes.py", line 741, in _run_command
    result = self._interface.run(cwd=outdir)
  File "/opt/miniconda/envs/default/lib/python3.7/site-packages/nipype/interfaces/base/core.py", line 397, in run
    runtime = self._run_interface(runtime)
  File "/opt/miniconda/envs/default/lib/python3.7/site-packages/nipype/interfaces/fsl/epi.py", line 997, in _run_interface
    runtime = super(Eddy, self)._run_interface(runtime)
  File "/opt/miniconda/envs/default/lib/python3.7/site-packages/nipype/interfaces/base/core.py", line 790, in _run_interface
    runtime = run_command(runtime, output=self.terminal_output)
  File "/opt/miniconda/envs/default/lib/python3.7/site-packages/nipype/utils/subprocess.py", line 137, in run_command_process()
  File "/opt/miniconda/envs/default/lib/python3.7/site-packages/nipype/utils/subprocess.py", line 133, in _process
  File "/opt/miniconda/envs/default/lib/python3.7/site-packages/nipype/utils/subprocess.py", line 41, in read
    while self._read(drain) is not None:
  File "/opt/miniconda/envs/default/lib/python3.7/site-packages/nipype/utils/subprocess.py", line 48, in _read
    buf = os.read(fd, 4096).decode(self.default_encoding)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xe1 in position 3: invalid continuation byte

Screenshots / relevant information:

Thanks in advance for any help.

Thank you for your edit, @Steven