Hi everyone,
I ran qsiprep on ~40 subjects and for 5 on them, I didn’t have a .html output that summarized the preprocessing step but instead, I have a log file with the following error
Traceback (most recent call last):
File “/usr/local/miniconda/lib/python3.8/site-packages/nipype/pipeline/plugins/multiproc.py”, line 67, in run_node
result[“result”] = node.run(updatehash=updatehash)
File “/usr/local/miniconda/lib/python3.8/site-packages/nipype/pipeline/engine/nodes.py”, line 527, in run
result = self._run_interface(execute=True)
File “/usr/local/miniconda/lib/python3.8/site-packages/nipype/pipeline/engine/nodes.py”, line 645, in _run_interface
return self._run_command(execute)
File “/usr/local/miniconda/lib/python3.8/site-packages/nipype/pipeline/engine/nodes.py”, line 771, in _run_command
raise NodeExecutionError(msg)
nipype.pipeline.engine.nodes.NodeExecutionError: Exception raised while executing Node raw_gqi.
That say, all the outputs are here, except the sub-01001_desc-ImageQC_dwi.csv and the sub-01001_dwiqc.json files. It looks like all the artefact corrections are made. Thus, it is not a big deal but I’m still wondering if someone know what it is about?
Thanks you,
Renaud
Steven
November 3, 2022, 3:14pm
2
Hi and welcome to Neurostars!
I have a few questions that might help with this.
What version of QSIPrep are you using? If not most recent (0.16.1 at this time) can you try updating?
Is there anything that might differentiate these 5 subjects from the remaining subjects?
Are your data BIDS-valid?
Does the error persist after retrying with a clean working directory?
Best,
Steven
Hello there,
I have a similar problem than Renaud with 14/69 raw_gqi
crashes :
no html report
QC files missing (.json
and .csv
)
and the following output files for these subjects :
├── anat
│ ├── sub-VS006_desc-brain_mask.nii.gz
│ ├── sub-VS006_desc-preproc_T1w.nii.gz
│ ├── sub-VS006_dseg.nii.gz
│ ├── sub-VS006_from-MNI152NLin2009cAsym_to-T1w_mode-image_xfm.h5
│ ├── sub-VS006_from-orig_to-T1w_mode-image_xfm.txt
│ ├── sub-VS006_from-T1w_to-MNI152NLin2009cAsym_mode-image_xfm.h5
│ ├── sub-VS006_label-CSF_probseg.nii.gz
│ ├── sub-VS006_label-GM_probseg.nii.gz
│ ├── sub-VS006_label-WM_probseg.nii.gz
│ ├── sub-VS006_space-MNI152NLin2009cAsym_desc-brain_mask.nii.gz
│ ├── sub-VS006_space-MNI152NLin2009cAsym_desc-preproc_T1w.nii.gz
│ ├── sub-VS006_space-MNI152NLin2009cAsym_dseg.nii.gz
│ ├── sub-VS006_space-MNI152NLin2009cAsym_label-CSF_probseg.nii.gz
│ ├── sub-VS006_space-MNI152NLin2009cAsym_label-GM_probseg.nii.gz
│ └── sub-VS006_space-MNI152NLin2009cAsym_label-WM_probseg.nii.gz
├── dwi
│ ├── sub-VS006_acq-cusp66b3000_dir-ap_confounds.tsv
│ ├── sub-VS006_acq-cusp66b3000_dir-ap_desc-SliceQC_dwi.json
│ ├── sub-VS006_acq-cusp66b3000_dir-ap_space-T1w_desc-brain_mask.nii.gz
│ ├── sub-VS006_acq-cusp66b3000_dir-ap_space-T1w_desc-eddy_cnr.nii.gz
│ ├── sub-VS006_acq-cusp66b3000_dir-ap_space-T1w_desc-preproc_dwi.b
│ ├── sub-VS006_acq-cusp66b3000_dir-ap_space-T1w_desc-preproc_dwi.bval
│ ├── sub-VS006_acq-cusp66b3000_dir-ap_space-T1w_desc-preproc_dwi.bvec
│ ├── sub-VS006_acq-cusp66b3000_dir-ap_space-T1w_desc-preproc_dwi.nii.gz
│ └── sub-VS006_acq-cusp66b3000_dir-ap_space-T1w_dwiref.nii.gz
└── log
└── 20221105-152554_af0435b2-876a-4aac-a075-3d36cd797b3c
└── crash-20221105-181856-qduche-raw_gqi-0bd9638d-0e58-4dcd-9b46-5bf380c60732.txt
Example of a crash txt file
Node: qsiprep_wf.single_subject_VS025_wf.dwi_finalize_acq_cusp66b3000_dir_ap_wf.transform_dwis_t1.calculate_qc.raw_gqi
Working directory: /work/qsiprep_wf/single_subject_VS025_wf/dwi_finalize_acq_cusp66b3000_dir_ap_wf/transform_dwis_t1/calculate_qc/raw_gqi
Node inputs:
args = <undefined>
check_btable = 0
decomp_fraction = <undefined>
decomp_m_value = <undefined>
decomposition = <undefined>
deconv_regularization = <undefined>
deconvolution = <undefined>
environ = {}
grad_dev = <undefined>
input_src_file = /work/qsiprep_wf/single_subject_VS025_wf/dwi_finalize_acq_cusp66b3000_dir_ap_wf/transform_dwis_t1/calculate_qc/raw_src/vol0000_trans_merged.src.gz
mask = <undefined>
num_fibers = 3
num_threads = 1
odf_order = 8
output_odf = True
ratio_of_mean_diffusion_distance = 1.25
thread_count = 1
Traceback (most recent call last):
File "/usr/local/miniconda/lib/python3.8/site-packages/nipype/pipeline/plugins/multiproc.py", line 67, in run_node
result["result"] = node.run(updatehash=updatehash)
File "/usr/local/miniconda/lib/python3.8/site-packages/nipype/pipeline/engine/nodes.py", line 527, in run
result = self._run_interface(execute=True)
File "/usr/local/miniconda/lib/python3.8/site-packages/nipype/pipeline/engine/nodes.py", line 645, in _run_interface
return self._run_command(execute)
File "/usr/local/miniconda/lib/python3.8/site-packages/nipype/pipeline/engine/nodes.py", line 771, in _run_command
raise NodeExecutionError(msg)
nipype.pipeline.engine.nodes.NodeExecutionError: Exception raised while executing Node raw_gqi.
Cmdline:
dsi_studio --action=rec --method=4 --check_btable=0 --source=/work/qsiprep_wf/single_subject_VS025_wf/dwi_finalize_acq_cusp66b3000_dir_ap_wf/transform_dwis_t1/calculate_qc/raw_gqi/vol0000_trans_merged.src.gz --num_fiber=3 --thread_count=1 --record_odf=1 --param0=1.2500 --thread_count=1
Stdout:
DSI Studio Feb 22 2022, Fang-Cheng Yeh
source=/work/qsiprep_wf/single_subject_VS025_wf/dwi_finalize_acq_cusp66b3000_dir_ap_wf/transform_dwis_t1/calculate_qc/raw_gqi/vol0000_trans_merged.src.gz
action=rec
loading source...
src loaded
method=4
method=4
param0=1.2500
param0=1.25
odf_order=8
odf_resolving=0
record_odf=1
check_btable=0
output_tensor=0
output_rdi=1
num_fiber=3
r2_weighted=0
csf_calibration=0
thread_count=1
half_sphere=0
scheme_balance=1
record ODF in the fib file
motion_correction=0
start reconstruction...
GQI reconstruction
ERROR:unknown exception
Warning: --thread_count is not used. Please check command line syntax.
Stderr:
Traceback:
Traceback (most recent call last):
File "/usr/local/miniconda/lib/python3.8/site-packages/nipype/interfaces/base/core.py", line 401, in run
outputs = self.aggregate_outputs(runtime)
File "/usr/local/miniconda/lib/python3.8/site-packages/nipype/interfaces/base/core.py", line 430, in aggregate_outputs
predicted_outputs = self._list_outputs() # Predictions from _list_outputs
File "/usr/local/miniconda/lib/python3.8/site-packages/qsiprep/interfaces/dsi_studio.py", line 252, in _list_outputs
assert len(results) == 1
AssertionError
My dataset is more detailed here .
Do you have any idea where this can come from ?
Thank you for your help
Quentin
I think in both cases this problem is related to resource usage. What are your --nthreads and --ompnthreads? how much memory is available at run time?