Template picking - Array size bug (ValueError)


I was doing template picking and got the following error:

[CPU: 715.3 MB]  Traceback (most recent call last):
  File "cryosparc_worker/cryosparc_compute/run.py", line 84, in cryosparc_compute.run.main
  File "cryosparc_worker/cryosparc_compute/jobs/template_picker_gpu/run.py", line 61, in cryosparc_compute.jobs.template_picker_gpu.run.run
  File "cryosparc_worker/cryosparc_compute/jobs/template_picker_gpu/run.py", line 246, in cryosparc_compute.jobs.template_picker_gpu.run.do_pick
  File "cryosparc_worker/cryosparc_compute/jobs/template_picker_gpu/run.py", line 257, in cryosparc_compute.jobs.template_picker_gpu.run.do_pick
  File "cryosparc_worker/cryosparc_compute/jobs/template_picker_gpu/run.py", line 89, in cryosparc_compute.jobs.template_picker_gpu.run.lambda
  File "path/cryosparc/3.2/cryosparc_worker/cryosparc_compute/blobio/mrc.py", line 139, in read_mrc
    data = read_mrc_data(file_obj, header, start_page, end_page, out)
  File "path/cryosparc/3.2/cryosparc_worker/cryosparc_compute/blobio/mrc.py", line 101, in read_mrc_data
    data = n.fromfile(file_obj, dtype=dtype, count= num_pages * ny * nx).reshape(num_pages, ny, nx)
ValueError: cannot reshape array of size 2096896 into shape (1,4092,5760)

I think it is a bug to be fixed. Hence reporting.


Hi @iswaryapj,

The traceback indicates that the job tried to read a micrograph but the file on disk was corrupted (the file had only 2096896 values but should have had 23,569,920 values. Can you check the micrographs on disk to see if there is one that is the wrong size? This may indicate disk corruption or another issue.

Hi @apunjani,

I am sorry, I do not have that possibility to check.
However, while I restarted the job, it went well.