Mriqc error on singularity HPC

Hi all,

I am using mriqc for the first time using singularity on my university’s HPC. I was able to successfully use mriqc for a couple of participants, but then the next day I started receiving errors when attempting to run additional participants.

I am using the mriqc pre-release version 21.0.0rc2. I originally used the latest version (0.16.1), but was receiving some other errors that were fixed by switching to 21.0.0rc2 (as discussed here).

The code I am using is this:
singularity run --cleanenv --bind /scratch/willibwe/:/work --bind /mmfs1/data/kensinel/canlab/cogneuro/bids/:/data --bind /mmfs1/data/kensinel/canlab/cogneuro/bids/derivatives/mriqc/:/out mriqc_latest_niprep.sif /data /out participant --participant_label CN047 -w /work

The errors I am receiving are:
INFO: Converting SIF file to temporary sandbox…
WARNING: underlay of /etc/localtime required more than 50 (101) bind mounts
Traceback (most recent call last):
File “/opt/conda/bin/mriqc”, line 8, in
sys.exit(main())
File “/opt/conda/lib/python3.8/site-packages/mriqc/cli/run.py”, line 38, in main
parse_args()
File “/opt/conda/lib/python3.8/site-packages/mriqc/cli/parser.py”, line 406, in parse_args
config.from_dict(vars(opts))
File “/opt/conda/lib/python3.8/site-packages/mriqc/config.py”, line 576, in from_dict
execution.load(settings)
File “/opt/conda/lib/python3.8/site-packages/mriqc/config.py”, line 207, in load
cls.init()
File “/opt/conda/lib/python3.8/site-packages/mriqc/config.py”, line 447, in init
cls._layout = BIDSLayout(
File “/opt/conda/lib/python3.8/site-packages/bids/layout/layout.py”, line 156, in init
indexer(self)
File “/opt/conda/lib/python3.8/site-packages/bids/layout/index.py”, line 112, in call
self._index_metadata()
File “/opt/conda/lib/python3.8/site-packages/bids/layout/index.py”, line 380, in _index_metadata
file_md.update(pl())
ValueError: dictionary update sequence element #0 has length 4; 2 is required
INFO: Cleaning up image…

I have not been able to finding any discussions about this error related to mriqc or fmriprep. Does anyone have any advice on how to fix this error I am receiving? Again, it worked fine on the first 2 participants, and then the next day began producing this error. I have tried this with a 3 or 4 other participants, but the result is the same every time. Any help you can offer would be greatly appreciated!

Thanks,
Sam Williams

I am having the same ValueError with fMRIPrep 20.2.5 + Singularity 3.8.3. Similarly had 3 subjects work fine as jobs submitted to my university HPC and now any that I submit yield this error…

Just to let you know, I am still having this issue with mriqc 0.16.1 and the pre-release version 21.0.0rc2. However, I have been able to successfully run 0.15.1. Bummer to hear you are having the same issue with fmriprep, as I was hoping it wouldn’t be an issue. I am working with my university’s IT to see if it’s something we can fix from our end, so I will let you know if I come up with any solutions!

I was actually able to resolve this by double checking that my dataset was BIDS valid. It turns out that providing a .bidsignore file to skip a some files/folders during validation is not functionality that persists across BIDS apps (MRIQC, fMRIPrep). After removing the .bidsignore and all other non-compliant files my jobs run successfully.

Also, not sure if you’ve tried this yet but running the singularity command with debugging output

singularity --debug run --cleanenv ...

may yield more info on where exactly the error is occurring.

this is super helpful, thank you so much! I’ll let you know how I get on.

I had a similar issue with .bidsignore and non-compliant files (e.g., a ‘logs’ folder I had added to the bids subdirectory), but, as you suggested, once I removed them I was able to successfully run version 21.0.0rc2 again. Thanks for providing me with these suggestions!

1 Like