Reference based motion correction - missing gain file

Hello, I’ve updated cryosparc to the most recent version 4.4.0. When running RBMC (either from Patch CTF or Patch Motion Corr.) on a medium-resolution map, I get the following error. Note that the movies and gain files are located on a SATA drive, but I can see the gain when the drive is mounted.

--------------------------------------------------------------
        STARTING: OPTIMIZE HYPERPARAMETERS
--------------------------------------------------------------

Working with 278 movies containing 12556 particles

Computing intended data cache configuration

Traceback (most recent call last):
  File "cryosparc_master/cryosparc_compute/run.py", line 95, in cryosparc_master.cryosparc_compute.run.main
  File "cryosparc_master/cryosparc_compute/jobs/motioncorrection/run_reference_motion.py", line 322, in cryosparc_master.cryosparc_compute.jobs.motioncorrection.run_reference_motion.run_reference_motion_correction
  File "cryosparc_master/cryosparc_compute/jobs/motioncorrection/refmotion.py", line 766, in cryosparc_master.cryosparc_compute.jobs.motioncorrection.refmotion.mainfn_param_optimize
  File "cryosparc_master/cryosparc_compute/jobs/motioncorrection/refmotion.py", line 674, in cryosparc_master.cryosparc_compute.jobs.motioncorrection.refmotion.prepare_datasets
  File "cryosparc_master/cryosparc_compute/jobs/motioncorrection/refmotion.py", line 143, in cryosparc_master.cryosparc_compute.jobs.motioncorrection.refmotion.read_gain_and_defects
  File "cryosparc_master/cryosparc_compute/blobio/prefetch.py", line 70, in cryosparc_master.cryosparc_compute.blobio.prefetch.synchronous_native_read
OSError: 

IO request details:
filename:    /home/jmplab/asverzh/data/EM/cryoSPARC_projects/P5/J257/imported/n22may24a_25220849_01_4092x5760_norm_0.mrc
filetype:    0
header_only: 0
idx_start:   0
idx_limit:   -1
eer_upsampfactor: 2
eer_numfractions: 40
num_threads: 6
buffer:      (nil)
buffer_sz:   0
nx, ny, nz:  0 0 0
dtype:       0
total_time:  -1.000000
io_time:     0.000000

Was the drive mounted under the expected path at the time the job was running?
Please can you post the output of these commands:

stat -f /home/jmplab/asverzh/data/EM/cryoSPARC_projects/P5
readlink -e /home/jmplab/asverzh/data/EM/cryoSPARC_projects/P5/J257/imported/n22may24a_25220849_01_4092x5760_norm_0.mrc
stat $(readlink -e /home/jmplab/asverzh/data/EM/cryoSPARC_projects/P5/J257/imported/n22may24a_25220849_01_4092x5760_norm_0.mrc)
file $(readlink -e /home/jmplab/asverzh/data/EM/cryoSPARC_projects/P5/J257/imported/n22may24a_25220849_01_4092x5760_norm_0.mrc)

Yes the drive was mounted at the expected path when I launched the job. Here are the outputs:

 File: "/home/jmplab/asverzh/data/EM/cryoSPARC_projects/P5"
    ID: 0        Namelen: 255     Type: nfs
Block size: 1048576    Fundamental block size: 1048576
Blocks: Total: 13654812   Free: 7380825    Available: 7380825
Inodes: Total: 15118993164 Free: 15115928728
readlink -e /home/jmplab/asverzh/data/EM/cryoSPARC_projects/P5/J257/imported/n22may24a_25220849_01_4092x5760_norm_0.mrc
/usbdisk/2022-05-24-PDHTE-GLT_G-NCCAT_frames/references/n22may24a_25220849_01_4092x5760_norm_0.mrc
stat $(readlink -e /home/jmplab/asverzh/data/EM/cryoSPARC_projects/P5/J257/imported/n22may24a_25220849_01_4092x5760_norm_0.mrc)
  File: /usbdisk/2022-05-24-PDHTE-GLT_G-NCCAT_frames/references/n22may24a_25220849_01_4092x5760_norm_0.mrc
  Size: 94280704        Blocks: 184144     IO Block: 4096   regular file
Device: 811h/2065d      Inode: 153878533   Links: 1
Access: (0666/-rw-rw-rw-)  Uid: ( 1075/ asverzh)   Gid: ( 1013/  jmplab)
Access: 2023-09-30 21:11:00.140991174 -0400
Modify: 2022-06-22 17:05:54.007853186 -0400
Change: 2022-07-22 08:58:24.463560320 -0400
 Birth: 2022-07-21 19:34:39.231246866 -0400
file $(readlink -e /home/jmplab/asverzh/data/EM/cryoSPARC_projects/P5/J257/imported/n22may24a_25220849_01_4092x5760_norm_0.mrc)
/usbdisk/2022-05-24-PDHTE-GLT_G-NCCAT_frames/references/n22may24a_25220849_01_4092x5760_norm_0.mrc: CCP4 Electron Density Map, Little-endian

Hi, I figured it out. I was trying to use a GPU on a second worker, while the drive was mounted to the master/first worker computer. It’s running if I mount the drive with the second worker.

2 Likes

CryoSPARC v4.4.1 includes a fix for missing details related to IO errors.