Summary of what happened:
I am running fMRIPrep 25.1.3 on one subject with multiple sessions.
Processing works fine for sessions 01–07, but when it reaches session 08, I get an error stating:
conf_plot failed to run on the host
I previously ran the same batch successfully with slightly different parameters:
- Earlier run: used only T1w images (no T2w) and did not pass the
--dummy-scans
flag to fMRIPrep. - Current run:
- Use a BIDS filter JSON to instruct fMRIPrep to use both T1w and T2w images from
ses-01
for the FreeSurferrecon-all
step. - Added the flag
--dummy-scans 5
.
- Use a BIDS filter JSON to instruct fMRIPrep to use both T1w and T2w images from
From the logs, it appears that the problem happens when computing the confounds, as the carpet plot output is missing from the figures
directory for session 08.
Command used (and if a helper script was used, a link to the helper script or the command generated):
module load Apptainer/1.2.4 && unset PYTHONPATH && singularity run --cleanenv --no-home --writable-tmpfs -B /scratch/tlei/VOTCLOC/BIDS:/base -B /scratch/tlei/VOTCLOC/code:/code -B /scratch/tlei/fmriprep_tmps_one_ses_anat_T1_T2_dummyscans5/.cache/templateflow:/templateflow -B /scratch/tlei/fmriprep_tmps_one_ses_anat_T1_T2_dummyscans5/.cache/fmriprep:/work /scratch/tlei/containers/fmriprep_25.1.3.sif /base /base/derivatives/fmriprep-25.1.3_one_ses_anat_T1_T2_dummyscans5 participant --participant-label 02 -w /work/ -vv --fs-license-file /base/.license --omp-nthreads 10 --nthreads 20 --mem_mb 50000 --skip-bids-validation --fs-subjects-dir /base/derivatives/freesurfer --dummy-scans 5 --stop-on-first-crash --bids-filter-file /code/fmriprep/bids_filter_sub-02.json --output-spaces T1w func MNI152NLin2009cAsym fsnative fsaverage
{
"t1w":{"datatype":"anat","suffix":"T1w", "session":["01"]},
"bold":{"datatype":"func","suffix":"bold", "session":["01","02","03","04","05","06","07","08","09","10"]},
"fmap": {"datatype": "fmap", "session":["01","02","03","04","05","06","07","08","09","10"]},
"sbref": {"datatype": "func", "suffix": "sbref", "session":["01","02","03","04","05","06","07","08","09","10"]}
Version:
25.1.3
Environment (Docker, Singularity / Apptainer, custom installation):
Apptainer
Relevant log outputs (up to 20 lines):
250808-07:06:53,741 nipype.workflow INFO:
[Node] Executing "ds_confounds" <fmriprep.interfaces.DerivativesDataSink>
250808-07:06:53,752 nipype.workflow INFO:
[Node] Finished "ds_confounds", elapsed time 0.009869s.
250808-07:06:53,757 nipype.workflow INFO:
[Job 29078] Completed (fmriprep_25_1_wf.sub_02_wf.bold_ses_07_task_retRW_run_02_wf.ds_confounds).
250808-07:06:55,561 nipype.workflow INFO:
[Node] Setting-up "_sampler0" in "/work/fmriprep_25_1_wf/sub_02_wf/bold_ses_03_task_fLoc_run_05_wf/bold_surf_wf/_target_fsnative/sampler/mapflow/_sampler0".
250808-07:06:55,563 nipype.workflow INFO:
[Node] Setting-up "_sampler1" in "/work/fmriprep_25_1_wf/sub_02_wf/bold_ses_03_task_fLoc_run_05_wf/bold_surf_wf/_target_fsnative/sampler/mapflow/_sampler1".
250808-07:06:55,566 nipype.workflow INFO:
[Node] Setting-up "_acc_msk_bin1" in "/work/fmriprep_25_1_wf/sub_02_wf/bold_ses_08_task_fLoc_run_08_wf/bold_confounds_wf/acc_msk_bin/mapflow/_acc_msk_bin1".
250808-07:06:55,574 nipype.workflow INFO:
[Node] Executing "_sampler1" <nipype.interfaces.freesurfer.utils.SampleToSurface>
250808-07:06:55,577 nipype.workflow INFO:
[Node] Executing "_sampler0" <nipype.interfaces.freesurfer.utils.SampleToSurface>
250808-07:06:55,585 nipype.workflow INFO:
[Node] Executing "_acc_msk_bin1" <niworkflows.interfaces.nibabel.Binarize>
250808-07:06:55,590 nipype.workflow ERROR:
Node conf_plot failed to run on host hyperion-289.
250808-07:06:55,598 nipype.workflow ERROR:
Saving crash info to /base/derivatives/fmriprep-25.1.3_one_ses_anat_T1_T2_dummyscans5/sub-02/log/20250807-191932_6494025d-0865-4b16-b017-7342dfb776fb/crash-20250808-070655-tlei-conf_plot-238d45d3-e733-4069-8e4e-9026c2e30c3a.txt
Traceback (most recent call last):
File "/opt/conda/envs/fmriprep/lib/python3.12/site-packages/nipype/pipeline/plugins/multiproc.py", line 67, in run_node
result["result"] = node.run(updatehash=updatehash)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/conda/envs/fmriprep/lib/python3.12/site-packages/nipype/pipeline/engine/nodes.py", line 525, in run
result = self._run_interface(execute=True)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/conda/envs/fmriprep/lib/python3.12/site-packages/nipype/pipeline/engine/nodes.py", line 643, in _run_interface
return self._run_command(execute)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/conda/envs/fmriprep/lib/python3.12/site-packages/nipype/pipeline/engine/nodes.py", line 769, in _run_command
raise NodeExecutionError(msg)
nipype.pipeline.engine.nodes.NodeExecutionError: Exception raised while executing Node conf_plot.
Traceback:
Traceback (most recent call last):
File "/opt/conda/envs/fmriprep/lib/python3.12/site-packages/nipype/interfaces/base/core.py", line 401, in run
runtime = self._run_interface(runtime)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/conda/envs/fmriprep/lib/python3.12/site-packages/fmriprep/interfaces/confounds.py", line 591, in _run_interface
).plot()
^^^^^^
File "/opt/conda/envs/fmriprep/lib/python3.12/site-packages/nireports/reportlets/modality/func.py", line 105, in plot
figure = plt.figure(figsize=(19.2, sum(height_ratios)))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/conda/envs/fmriprep/lib/python3.12/site-packages/matplotlib/pyplot.py", line 1033, in figure
_api.warn_external(
File "/opt/conda/envs/fmriprep/lib/python3.12/site-packages/matplotlib/_api/__init__.py", line 391, in warn_external
warnings.warn(message, category, **kwargs)
TypeError: _warn() got an unexpected keyword argument 'skip_file_prefixes'