Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

crash with multisession BIDS data #5

Open
yonestar opened this issue Mar 25, 2020 · 6 comments
Open

crash with multisession BIDS data #5

yonestar opened this issue Mar 25, 2020 · 6 comments

Comments

@yonestar
Copy link

yonestar commented Mar 25, 2020

Hi Tamas,

It is wonderful that you made this great tool, AND, that you made it so accessible w/ a docker. I am excited to be applying it to my data.

The docker is crashing for me. The logs are attached. I tried it on two subjects, one with --keep-derivatives and one without. The error messages seem a bit different. Attaching the logs now.
Archive.zip

Both subjects are in valid BIDS format.

I have one guess as to a potential problem. I have data from multiple time points (pre- and post-treatment), so my bids structure is subject/ses-XX/anat,func,fmap. Perhaps your code does not expect the session level? Also, my data is all gzipped

Thanks
Yoni Ashar
Wager lab

@spisakt
Copy link
Owner

spisakt commented Apr 7, 2020

Hi Yoni,

Sorry for the late replay!
Indeed, the app wasn't tested with session level.

On the other hand, it uses nipype's BIDSDataGrabber(), so should theoretically be able to handle it.

The error message says that no T1w file was found.
Is your anatomical image named like "anat/sub-XXX-T1w.nii.gz"? Do you have the "T1w" tag there?
(Gzipped data must work without any problem)

Thanks
Tamas

@yonestar
Copy link
Author

yonestar commented Apr 7, 2020 via email

@granitz
Copy link

granitz commented Apr 14, 2020

I have a similar issue. Although data is in /sub-XXX/anat folder. Unfortunately I cannot find the crash file in tmp folder.

crashfile: /tmp/crash-20200414-073808-root-_reorient_func2-10753938-0f5d-4d7b-8519-240e8919e468.pklz
            200414-11:03:19,727 nipype.workflow INFO:
  	 ***********************************
  Traceback (most recent call last):
    File "/home/rpn-signature/src/RPN-signature/pipeline/rpn-signature.py", line 366, in <module>
      totalWorkflow.run(plugin='MultiProc', plugin_args=plugin_args)
    File "/usr/local/miniconda/lib/python2.7/site-packages/nipype/pipeline/engine/workflows.py", line 599, in run
      runner.run(execgraph, updatehash=updatehash, config=self.config)
    File "/usr/local/miniconda/lib/python2.7/site-packages/nipype/pipeline/plugins/base.py", line 191, in run
      report_nodes_not_run(notrun)
    File "/usr/local/miniconda/lib/python2.7/site-packages/nipype/pipeline/plugins/tools.py", line 82, in report_nodes_not_run
      raise RuntimeError(('Workflow did not execute cleanly. '
  RuntimeError: Workflow did not execute cleanly. Check log for details

@spisakt
Copy link
Owner

spisakt commented Apr 17, 2020

Hi everyone,
Thanks for the feedback and apologies again for the late response.

@granitz: It's not clear if it is the same bug. Can you find the crash file in the folder where the output is?
Or is there a line like this in your script output:

raise IOError(msg)
IOError: Output key: T1w returned no files

@yonestar: I had a brief look and it seems like it's an issue of the nipype version inside the docker container. Simply said: The problem is relatively simply to resolve, but I have to redo all the packaging and fight potential dependency problems.
Unfortunately, i am quite busy right now and can't do this with a short deadline.

A workaround could be that you "flatten" your BIDS structure, that is, you pretend that you have single session data (by treating sessions as subjects or - even better - by having two separate BIDS folders, one for the pre and one for the post).

Is it an option for you, or you rather wait for the fix?

Cheers,
Tamas

@spisakt spisakt pinned this issue Apr 17, 2020
@spisakt spisakt changed the title crash crash with multisession BIDS data Apr 17, 2020
@granitz
Copy link

granitz commented Apr 18, 2020

Hi everyone,
Thanks for the feedback and apologies again for the late response.

@granitz: It's not clear if it is the same bug. Can you find the crash file in the folder where the output is?
Or is there a line like this in your script output:

raise IOError(msg)
IOError: Output key: T1w returned no files

@yonestar: I had a brief look and it seems like it's an issue of the nipype version inside the docker container. Simply said: The problem is relatively simply to resolve, but I have to redo all the packaging and fight potential dependency problems.
Unfortunately, i am quite busy right now and can't do this with a short deadline.

A workaround could be that you "flatten" your BIDS structure, that is, you pretend that you have single session data (by treating sessions as subjects or - even better - by having two separate BIDS folders, one for the pre and one for the post).

Is it an option for you, or you rather wait for the fix?

Cheers,
Tamas

Thank you for your response. The problem of finding the crash file persists. And I'm not getting this error: IOError: Output key: T1w returned no files. These are the last few lines, although I'm not sure if this helps.

200418-19:44:31,131 nipype.workflow INFO:
[MultiProc] Running 1 tasks, and 0 jobs ready. Free memory (GB): 6.80/7.00, Free processors: 3/4.
Currently running:
* RPN.func2anat.vent_bb_mask
200418-19:45:08,714 nipype.workflow INFO:
[Node] Finished "_vent_bb_mask0".
200418-19:45:08,722 nipype.workflow INFO:
[Node] Finished "RPN.func2anat.vent_bb_mask".
200418-19:45:09,139 nipype.workflow INFO:
[Job 108] Completed (RPN.func2anat.vent_bb_mask).
200418-19:45:09,147 nipype.workflow INFO:
[MultiProc] Running 0 tasks, and 0 jobs ready. Free memory (GB): 7.00/7.00, Free processors: 4/4.
200418-19:45:11,139 nipype.workflow INFO:
***********************************
200418-19:45:11,140 nipype.workflow ERROR:
could not run node: RPN.reorient_func
200418-19:45:11,141 nipype.workflow INFO:
crashfile: /tmp/crash-20200418-160355-root-_reorient_func0-137cec49-cb41-45ef-a303-ec279108e700.pklz
200418-19:45:11,142 nipype.workflow ERROR:
could not run node: RPN.reorient_func
200418-19:45:11,144 nipype.workflow INFO:
crashfile: /tmp/crash-20200418-160357-root-_reorient_func2-698e3ea4-1aec-4be2-b569-0883b2d64f7b.pklz
200418-19:45:11,145 nipype.workflow INFO:
***********************************
Traceback (most recent call last):
File "/home/rpn-signature/src/RPN-signature/pipeline/rpn-signature.py", line 366, in
totalWorkflow.run(plugin='MultiProc', plugin_args=plugin_args)
File "/usr/local/miniconda/lib/python2.7/site-packages/nipype/pipeline/engine/workflows.py", line 599, in run
runner.run(execgraph, updatehash=updatehash, config=self.config)
File "/usr/local/miniconda/lib/python2.7/site-packages/nipype/pipeline/plugins/base.py", line 191, in run
report_nodes_not_run(notrun)
File "/usr/local/miniconda/lib/python2.7/site-packages/nipype/pipeline/plugins/tools.py", line 82, in report_nodes_not_run
raise RuntimeError(('Workflow did not execute cleanly. '
RuntimeError: Workflow did not execute cleanly. Check log for details

@spisakt
Copy link
Owner

spisakt commented Apr 19, 2020

Can you find the crash file, when specifying the --debug option?
That will save all temporary files in the output directory.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants