Fmriprep running recon-all but freesurfer outputs exist (and are detected)

Hi,

I have completed fMRIprep on a directory that includes task fMRI data for a group of participants. I did not include the IntendedFor key in the fieldmap json file, and so I am rerunning fMRIprep (with updated jsons) to ensure SDC is completed. I want to use the existing freesurfer outputs rather than rerun everything, and fMRIprep has detected the freesurfer folder in the output directory. I get a message to say recon-all complete : Not running, but then certain recon-all steps do seem to be running: “resume recon-all : recon-all -autorecon-hemi lh -noparcstats -noparcstats2 -noparcstats3 -nohyporelabel -nobalabels -openmp 8 -subjid sub-101 -sd /outputfolder/freesurfer” and taking quite a long time (looking at the logs it seems like the parcellation/normalization steps are re-completed). It then appears to be hanging after completion of the FS steps. I am wondering if this is the intended process, and whether it is possible to avoid it and still obtain the required preprocessed outputs? For info, I have removed the func folder from derivatives/fmriprep/sub/ses-001 directory to encourage rewriting files (which may have been unnecessary, but I don’t think the source of the problem).

Thank you very much!

Caitlin

What version of FreeSurfer were your existing FreeSurfer outputs generated by? Unfortunately, FreeSurfer’s steps changed between v5.3 and v6.0, so 5.3-reconstructed subjects will not be detected as complete by FreeSurer 6.0.

Thank you for your response. Both attempts were run under freesurfer 6.0, so I don’t think that is the issue. It looks like it might be related to this discussion: https://github.com/poldracklab/fmriprep/issues/1875. I am now getting many messages saying outdated cache are found (e.g. ‘Outdated cache found for “fmriprep_wf.single_subject_102_wf.anat_preproc_wf.surface_recon_wf.autorecon_resume_wf.autorecon2_vol”’). Do you know if there is a workaround other than the hack proposed in the linked thread (i.e. --use-plugin)? Thank you!

Hi,
I seem to be having a similar issue, recon-all is rerun even when existing freesurfer output is provided. How did you manage to solve this in the end?