Import Job Error in PX: Job is not located inside project directory

Dear cryoSPARC developers,

we have cryoSPARC 4.4.0 installed under a technical “cryosparc” user. We have ~30 cryoSPARC users in our lab. Sometimes, our users want to transfer results from one project to another to save some time. For instance, a user wants to transfer a Topaz Training job from project P1 to a related project P2. So, the user exports the job in P1, for which cryoSPARC creates a “P1/exports/jobs” sub-directory and writes the exported job into, say, a “J12_topaz_train” folder into it. The user then wants to import this job into P2, workspace W1, pointing to the previously exported “J12_topaz_train” folder. Upon importing, cryoSPARC creates a “P2/imports” sub-directory, but then the import fails with the following related error messages:

“Import Job Error in P2: Job is not located inside project directory. Please move the job folder into P2/imports” and “Unable to import job into P2 W1: ServerError: Job to import must be located inside the project directory. Please move the job folder into P2/imports”

Here, the user is stuck because the “P2/imports” directory belongs to the “cryosparc” user, for which the user doesn’t have write permission, needed to move or copy the exported job folder into it. Currently, I have to manually give write permission for each user for each affected project’s “imports” folder (in principle, the users could also be added to the group of the “cryosparc” user, but our Linux user management is done by a Windows AD server which complicates group management).

So, why is cryoSPARC not able to import directly from its own exported job folder in the first place? And related: if the job folder to be imported must for some reason lie in the “imports” folder, why can’t cryoSPARC copy it over before importing?

Struggling with user permissions for importing jobs would be completely unnecessary if cryoSPARC would be able to directly import jobs from other project’s “exports” directories. So, may I ask you to change cryoSPARC’s import handling to do this?

Best regards,

Dirk

Are users able to write to the project root folder, as opposed to sub-folders therein? If so, as a workaround, perhaps they could create a symlink to P1 within the P2 project folder.

Cheers,
Yang

Unfortunately, a soft-link to the example P1/exports/jobs/J12_topaz_train folder must also be created in the P2/imports folder, which is not possible with the default user write permissions. They have only write permission for the folder above the project folders P1, P2, …, which are owned by the “cryosparc” user.

Cheers,

Dirk

I see. There doesn’t seem to be an issue on our instance doing it this way–creating a softlink and then specifying the softlink-mediated path for import–but our installation may be peculiar.

Cheers,
Yang