-
Notifications
You must be signed in to change notification settings - Fork 193
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
CTF estimation creates symlinks with absolute paths #1113
Comments
I doubt this. These links are created by a CTFFIND job and used only by the job itself. Thus, unless you move the project directory before the job completes, it should be fine. Am I missing other failure modes? |
Oh, this is STA, not SPA. I know nothing about the STA workflow. STA related issues need to be dealt with by others. |
To help this is the script we run on the HPC
|
The problem is after the completion of CTF estimation process. A directory is created in the If these symlinks are not longer needed after the completion of the CTF estimation process, can you please add a step to delete them after the CTF estimation is completed? If they are needed even after the CTF estimation is completed, can you change the code so they are created using relative paths and not absolute paths. This way the symlinks will not break even if the whole RELION project directory is moved elsewhere. It is a minor issue, but if the symlinks need to remain there after the CTF estimation completes, then having them in a form that they cannot break if the entire project directory is moved will be very useful. |
The symlinks are not used after the job completion as far as SPA is concerned. I think (not confirmed) they get deleted when a user "Gentle Clean" the job from the GUI.
This is a valid suggestion but because it is harmless (and nobody complained for at least five years), my priority is low. A pull request is welcomed. |
No problem, we can perform the symlink delete part, if the delete of the links is supposed to be executed by the GUI. We are currectly writing production scripts so a slurn script submitted to an HPC will perform a sequence of processes one after the other automatically. For this reason, we are running RELION solely using commands. It might be a good idea to add in the documentation, for those that run RELION only via commands, that any symlinks created by CTFFind it is OK to delete them after CTFFind finishes. Happy if you close the issue-ticket |
FYI:
Unfortunately I cannot help with the latter because I don't use the feature myself. |
Just want to confirm that STA behaves in the exact same way as SPA here. The PS.mrc files get generated during motioncorr and are only temporarily symlinked. Yes, deleting them would be cleaner, but this should not cause any issues. |
Hello, I also have the same problem, when using shell script in ctf, it will create a full path in ctffind directory, I do not know how to solve it now. At the same time, when I do ctf, there is an error “ERROR: Failed to make a symlink from A to B”, but the symlink already exists under ctfFind, but the error is still displayed. How do you solve it? |
I tested with SPA and STA and both had the same problem, |
Dear Relion developers,
Hi, my name is Dimitrios Bellos and I am a member of the AI & I team in the Rosalind Franklin Institute. Our team help with supporting our Franklin RELION users with issues.
Recently we spotted that there are issues arising from the fact that the CTF estimation step creates symlinks to the Motion corrected data using absolute paths.
Example in CTFFind/job003/
'Position_99_035[-61_00]_EER_PS.mrc' -> '/<absolute-path>/MotionCorr/job002/<data-directory>/Position_99_035[-61_00]_EER_PS.mrc'
This can cause issues if the whole Relion Project directory is moved. This is common because a whole Relion Project directory may be moved from our compute infrastructure to Baskerville HPC and vise versa. Is it possible to make changes so relative symlinks are created ?
example
'Position_99_035[-61_00]_EER_PS.mrc' -> '/../../../MotionCorr/job002/<data-directory>/Position_99_035[-61_00]_EER_PS.mrc'
You can even generate the relative path using the
realpath
command (see here https://stackoverflow.com/questions/2564634/convert-absolute-path-into-relative-path-given-a-current-directory-using-bash )Altenatively, can it even be done so no symlinks are used?
Kind regards,
Dimitrios Bellos
The text was updated successfully, but these errors were encountered: