Template picking error v2.11

Hi all,

I am get the error TypeError: 'NoneType' object has no attribute '__getitem__ when running template based picking in v2.11, even on a cloned job which previously ran successfully in version v2.9. This appears to happen when the templates are being loaded, immideately after “Job ready to run ***”.

The complete error message is
Traceback (most recent call last): File "cryosparc2_worker/cryosparc2_compute/run.py", line 78, in cryosparc2_compute.run.main File "cryosparc2_worker/cryosparc2_compute/jobs/template_picker_gpu/run.py", line 52, in cryosparc2_compute.jobs.template_picker_gpu.run.run File "cryosparc2_compute/jobs/runcommon.py", line 419, in load_input_group dsets = [load_input_connection_slots(input_group_name, keep_slot_names, idx, allow_passthrough=allow_passthrough) for idx in range(num_connections)] File "cryosparc2_compute/jobs/runcommon.py", line 390, in load_input_connection_slots dset.innerjoin(other, assert_no_drop=False) # assert_no_drop=False so we end up with only the intersection of UID-rows across all ds File "cryosparc2_compute/dataset.py", line 279, in innerjoin uids_A = self.data['uid'] TypeError: 'NoneType' object has no attribute '__getitem__'

Any suggestions would be much appreciated.

David

Hi @DavdBSauer,

Is it possible if you can confirm your update worked properly?
Did you ensure to properly connect the inputs this job requires?

Hi @stephan

As far as I can tell the update is installed properly. Running other jobs (2D Class, Select 2D) worked without issue in v2.11.

Also, as mentioned, I cloned a job that previously ran successfully under v2.9, yet it failed in v2.11. Therefore, the inputs of this job are certainly properly connected.

Note: It appears this may have something to do with a project previously started in v2.9. On another project run exclusively in v2.11, I am not having the same issue.

Hi @DavdBSauer,

Can you provide more information? If possible even screenshots or a screen recording. Can you also make sure all the files from the job in v2.9 are still available on the file system?

Hi @stephan,
So the issue has come up again, this time entirely within v2.11. I made an crude initial volume (ab initio -> homogeneous ref.), then made projections from that volume, and tried to use those projections as templates for picking. However, the template picker is giving the same error as above.

I can share log files privately if that would help.

David

Hi @DavdBSauer,

This error could be happening because of an orphaned process on your system. Is it possible if you can follow the instructions in this post to stop & reinstall cryoSPARC?

Hi @stephan
We tried killing all orphaned processes and reinstalling. This did not help.

However, we noticed that template picking on the output of the “patch ctf” job worked! (While picking on the output of “curated micrographs” failed.)

David

@DavdBSauer, just to confirm:

  • using the template picker with projections and the output of curated micrographs gave NoneType error
  • using the template picker with the same projections and the output of patch ctf worked fine

Did you use the select2D job at any point to select which projections you wanted to use for picking?

Hi, I have the same problem:
i.e the same error message if I try to use a movies from a curate exposure output for particle picking, but not if I use the ouput from CTF estimation. I have the v2.15.0+200528 version. Any suggestion?

Hello,
I think I have the same problem. When I try to manual pick or blob pick from manually curated exposures, cryosparc crashes with NonType error messages (attached below). However, if I use the exposures from the patch CTF correction job before manual curate, picking runs fine. Can anyone please advise?
Thanks,
Luca


@Luca and @ssorrentino,
Can you please let me know if, once you finished setting thresholds in Manually Curate Exposures, you clicked Done? This would generate the micrographs_accepted and microscopes_rejected outputs, which the various pickers would be able to read in. It’s possible that there were no micrograph inputs into the pickers, which resulted in the NoneType error - please let me know. Thanks!

Hi @spunjani,
Yes I did. See snapshot of output files below here:

I didn’t reject the exposures that I didn’t accept, could that be an issue?

Luca

Hi @Luca, thanks for your patience as we try to sort this out. Can you please send me a screenshot of the inputs to the Manual Picker job? You can find this by opening the Manual Picker job and clicking on the ‘Inputs and Parameters’ tab.

Can you please also list the job directory of the Manually Curate Exposures job?

Hi @spunjani,
Please find below snapshots for job inputs and list of job directory.
Luca

Hi @Luca,
Can you please print the exposures_accepted .csg file?
cat P8_J107_exposures_accepted.csg
Please feel free to DM me if you would prefer.

Hi @spunjani,
Here it is:

Hi @Luca, the exposures_accepted.cs and exposures_uncategorized.cs files which should have been present in the directory appear to be missing. We tried several ways but are unable to replicate the issue ourselves.

You could try re-running the exposure curation job to see if the same thing happens again, and report the streamlog of that exposure curation job if it fails again. Sorry we couldn’t be more helpful on this one thus far!

HI @spunjani, I ran it again and this time it worked. All expected files are there (see attached). Not sure what happened, but good that it’s working again.
Luca

Thanks for the update @Luca, this is really strange but glad it’s sorted for the time being!