Closed
Description
Summary
Nested MapNodes hang in some workflows when trying to load the node's result file. It appears this is because results.outputs.get() fails since there is a Bunch representation of outputs, rather than a dictionary representation.
Manifests as follows:
At the logging debug level during execution:
Outputs object of loaded result /private/tmp/work/20191012-164048_df69a011-5615-4010-aa22-d4a0c94c5696_wf_single_subject_fmri_0025427/wf_single_sub_0025427_fmri_20191012-164047/meta_wf_0025427/fmri_connectometry_0025427/thresh_func_node/result_thresh_func_node.pklz is a Bunch.
and then if I attempt to load the file manually:
In [32]: res.outputs.get()
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-32-347df97b2ed0> in <module>
----> 1 res.outputs.get()
/usr/local/anaconda3/lib/python3.7/site-packages/nipype-2.0.0.dev0+g7b9c63932-py3.7.egg/nipype/interfaces/base/support.py in get(self, *args)
TypeError: get expected at least 1 arguments, got 0
See attached example results file:
result_thresh_func_node.pklz.zip
Interestingly, it seems that load_resultfile
from nipyp/epipeline/engine/utils.py
fails, but only for the result file of the primary node (i.e. and not its subnodes if they get parameterized)
Appears to only occurs as of version nipype 1.2.3. Looks like this might also be related to #3009 #3014 #3075 and/or #1798 of fmriprep.
Any ideas @oesteban ?
Metadata
Metadata
Assignees
Labels
No labels