Nipype `eddy_openmp` from `nipype.workflows.dmri.all_fsl_pipeline` workflow always gets executed

Hi nipype community,

I am using the provided workflow nipype.workflows.dmri.fsl.all_fsl_pipeline() to correct for b0 inhomogeneities, eddy currents and motion. If I run several times my whole pipeline - which includes all_fsl_pipeline() - a node inside all_fsl_pipeline() called eddy_openmp always gets executed even when there are no changes. Does anyone know why this behaviour?

Thank you very much,

Ok, going through the code I found that the function _gen_index (in nipype/nipype/workflows/dmri/fsl/ line 235) rewrites the file index.txt everytime eddy is called and therefore, the node is executed… is that feasible?

@mimolimero Yes

This may be the case because _gen_index is explicitly called during the connection statement. avoiding Nipype’s usual hash-checking in the process and generating a new file everytime.