nipreps / dmriprep

dMRIPrep is a robust and easy-to-use pipeline for preprocessing of diverse dMRI data. The transparent workflow dispenses of manual intervention, thereby ensuring the reproducibility of the results.
https://www.nipreps.org/dmriprep
Apache License 2.0
63 stars 24 forks source link

Error on "gen_eddy_files" #172

Open h-w-k opened 3 years ago

h-w-k commented 3 years ago

Description

I ran dmriprep on Phillips data using the following dMRIPREP command,

dmriprep /work /output participant --participant_label sub-002 --fs-license-file /main/licens.txt --output-spaces T1w --use-syn-sdc --skip-bids-validation -w /main/WORK

Errors occured in "gen_eddy_files" shown in html report "Node Name: dmriprep_wf.single_subkect_002_wf.dwi_preproc_ses_01_run001_wf.eddy.wf.gen_eddy_files Node Name: dmriprep_wf.single_subkect_002_wf.dwi_preproc_ses_01_run001_dti_wf.eddy_wf.gen_eddy_files"

Please kindly advise how to fix it.

I think it is about PhaseEncodingDirection and Total Readout Time, which are required in the node. If it is the case, how could I input the required data in dMRIPREP command line?

Thank you very much.

margokersey commented 1 year ago

Hi, I believe I am also having the same issue as you. In the output file on my HPC I am getting the error: nipype.workflow ERROR: Node gen_eddy_files failed to run on host (hostname here)

I tried adding more memory to the job file (20G) but it did not change the result. I believe I have the B0FieldIdentifier and B0FieldSource fields filled out correctly in the JSON files. I also have the IntendedFor field filled out just in case.

in AP phase encoding JSON: "TotalReadoutTime": 0.0305196, "PhaseEncodingDirection": "j-", "IntendedFor": ["ses-20220822/dwi/sub-34115_ses-20220822_acq-b500_dir-30_dwi.nii.gz", "ses-20220822/dwi/sub-34115_ses-20220822_acq-b1000_dir-64_dwi.nii.gz", "ses-20220822/dwi/sub-34115_ses-20220822_acq-b2500_dir-96_dwi.nii.gz"], "B0FieldIdentifier": "pepolar"

in PA phase encoding JSON: "TotalReadoutTime": 0.0305196, "PhaseEncodingDirection": "j", "IntendedFor": ["ses-20220822/dwi/sub-34115_ses-20220822_acq-b500_dir-30_dwi.nii.gz", "ses-20220822/dwi/sub-34115_ses-20220822_acq-b1000_dir-64_dwi.nii.gz", "ses-20220822/dwi/sub-34115_ses-20220822_acq-b2500_dir-96_dwi.nii.gz"], "B0FieldIdentifier": "pepolar"

in b500/b1000/b2500 JSON: "TotalReadoutTime": 0.0305196, "PhaseEncodingDirection": "j-", "B0FieldSource": "pepolar"

In the subject's html file, the errors are the following:

(Removed in_meta field for privacy)

Errors

Node Name: dmriprep_wf.single_subject_01_wf.dwi_preproc_ses_20220822_acq_b2500_dir_96_wf.eddy_wf.gen_eddy_files

File: /out/dmriprep/sub-01/log/20230306-131934_90711f6c-910e-4008-a322-2bdfba99d6a5/crash-20230306-132033-mkersey-gen_eddy_files-e43cd7c6-3ff5-4576-bd0f-913add0d63e7.txt Working Directory: /out/workdir/dmriprep_wf/single_subject_01_wf/dwi_preproc_ses_20220822_acq_b2500_dir_96_wf/eddy_wf/gen_eddy_files Inputs:

Traceback (most recent call last): File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/plugins/multiproc.py", line 67, in run_node result["result"] = node.run(updatehash=updatehash) File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/engine/nodes.py", line 516, in run result = self._run_interface(execute=True) File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/engine/nodes.py", line 635, in _run_interface return self._run_command(execute) File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/engine/nodes.py", line 741, in _run_command result = self._interface.run(cwd=outdir) File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/interfaces/base/core.py", line 434, in run runtime = self._run_interface(runtime) File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/interfaces/utility/wrappers.py", line 142, in _run_interface out = function_handle(**args) File "", line 37, in gen_eddy_textfiles File "/usr/local/miniconda/lib/python3.7/pathlib.py", line 1208, in write_text with self.open(mode='w', encoding=encoding, errors=errors) as f: File "/usr/local/miniconda/lib/python3.7/pathlib.py", line 1176, in open opener=self._opener) File "/usr/local/miniconda/lib/python3.7/pathlib.py", line 1030, in _opener return self._accessor.open(self, flags, mode) OSError: [Errno 30] Read-only file system: '/data/sub-01/ses-20220822/dwi/sub-01_ses-20220822_acq-b2500_dir-96_dwi_acqparams.txt'

Node Name: dmriprep_wf.single_subject_01_wf.dwi_preproc_ses_20220822_acq_b1000_dir_64_wf.eddy_wf.gen_eddy_files

File: /out/dmriprep/sub-01/log/20230306-131934_90711f6c-910e-4008-a322-2bdfba99d6a5/crash-20230306-132033-mkersey-gen_eddy_files-f50f3e90-2439-4367-9e40-d609448c1ea0.txt Working Directory: /out/workdir/dmriprep_wf/single_subject_01_wf/dwi_preproc_ses_20220822_acq_b1000_dir_64_wf/eddy_wf/gen_eddy_files Inputs:

Traceback (most recent call last): File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/plugins/multiproc.py", line 67, in run_node result["result"] = node.run(updatehash=updatehash) File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/engine/nodes.py", line 516, in run result = self._run_interface(execute=True) File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/engine/nodes.py", line 635, in _run_interface return self._run_command(execute) File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/engine/nodes.py", line 741, in _run_command result = self._interface.run(cwd=outdir) File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/interfaces/base/core.py", line 434, in run runtime = self._run_interface(runtime) File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/interfaces/utility/wrappers.py", line 142, in _run_interface out = function_handle(**args) File "", line 37, in gen_eddy_textfiles File "/usr/local/miniconda/lib/python3.7/pathlib.py", line 1208, in write_text with self.open(mode='w', encoding=encoding, errors=errors) as f: File "/usr/local/miniconda/lib/python3.7/pathlib.py", line 1176, in open opener=self._opener) File "/usr/local/miniconda/lib/python3.7/pathlib.py", line 1030, in _opener return self._accessor.open(self, flags, mode) OSError: [Errno 30] Read-only file system: '/data/sub-01/ses-20220822/dwi/sub-01_ses-20220822_acq-b1000_dir-64_dwi_acqparams.txt'

Node Name: dmriprep_wf.single_subject_01_wf.fmap_preproc_wf.wf_pepolar_fmap0.concat_blips

File: /out/dmriprep/sub-01/log/20230306-131934_90711f6c-910e-4008-a322-2bdfba99d6a5/crash-20230306-132035-mkersey-concat_blips-90c5cd72-c066-4afe-95f1-3446cca0a283.txt Working Directory: /out/workdir/dmriprep_wf/single_subject_01_wf/fmap_preproc_wf/wf_pepolar_fmap0/concat_blips Inputs:

Node Name: dmriprep_wf.single_subject_01_wf.dwi_preproc_ses_20220822_acq_b500_dir_30_wf.eddy_wf.gen_eddy_files

File: /out/dmriprep/sub-01/log/20230306-131934_90711f6c-910e-4008-a322-2bdfba99d6a5/crash-20230306-132035-mkersey-gen_eddy_files-82dfde7a-9c8a-4a6c-ab0b-d1ffd0a3c6d6.txt Working Directory: /out/workdir/dmriprep_wf/single_subject_01_wf/dwi_preproc_ses_20220822_acq_b500_dir_30_wf/eddy_wf/gen_eddy_files Inputs:

Traceback (most recent call last): File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/plugins/multiproc.py", line 67, in run_node result["result"] = node.run(updatehash=updatehash) File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/engine/nodes.py", line 516, in run result = self._run_interface(execute=True) File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/engine/nodes.py", line 635, in _run_interface return self._run_command(execute) File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/engine/nodes.py", line 741, in _run_command result = self._interface.run(cwd=outdir) File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/interfaces/base/core.py", line 434, in run runtime = self._run_interface(runtime) File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/interfaces/utility/wrappers.py", line 142, in _run_interface out = function_handle(**args) File "", line 37, in gen_eddy_textfiles File "/usr/local/miniconda/lib/python3.7/pathlib.py", line 1208, in write_text with self.open(mode='w', encoding=encoding, errors=errors) as f: File "/usr/local/miniconda/lib/python3.7/pathlib.py", line 1176, in open opener=self._opener) File "/usr/local/miniconda/lib/python3.7/pathlib.py", line 1030, in _opener return self._accessor.open(self, flags, mode) OSError: [Errno 30] Read-only file system: '/data/sub-01/ses-20220822/dwi/sub-01_ses-20220822_acq-b500_dir-30_dwi_acqparams.txt'

Thank you so much in advance for any insight on how to fix this problem!!