Project

General

Profile

Actions

Bug #1535

open

danger in losing recon volume result from failed reconupload

Added by Anchi Cheng almost 13 years ago. Updated over 11 years ago.

Status:
Assigned
Priority:
Normal
Category:
-
Target version:
-
Start date:
01/23/2012
Due date:
% Done:

0%

Estimated time:
Affected Version:
Appion/Leginon 2.2.0
Show in known bugs:
No
Workaround:

Description

When uploadEMANRefine.py is run and failed in the middle of the run, reruning it would not work giving the following error because EMAN_result directory is removed and recreated at the beginning of the script while threed.1a.mrc in recon directory has been replaces as a link to the now non-existing volume in the new EMAN_result.

Dmitry, please at least give your thought on what you'd like it to do even if you can't work on it now.

Traceback (most recent call last):
  File "/usr/bin/uploadEMANRefine.py", line 605, in <module>
    upload3D.start()
  File "/usr/bin/uploadEMANRefine.py", line 592, in start
    self.createChimeraVolumeSnapshot(newvol, iteration)
  File "/usr/lib/python2.6/site-packages/appionlib/reconUploader.py", line 589, in createChimeraVolumeSnapshot
    sym='c1', mass=self.params['mass'])    
  File "/usr/lib/python2.6/site-packages/appionlib/apChimera.py", line 89, in filterAndChimera
    apDisplay.printError("Volume file is not valid")
  File "/usr/lib/python2.6/site-packages/appionlib/apDisplay.py", line 57, in printError
    raise Exception, colorString("\n *** FATAL ERROR ***\n"+text+"\n\a","red")
Exception: 
 *** FATAL ERROR ***
Volume file is not valid

Actions #1

Updated by Dmitry Lyumkis almost 13 years ago

Anchi, I don't see anywhere in the code where the eman_results directory would be removed, it's only created if it doesn't exist. What I do remember, however, is that there is a unique timestamp that can be associated with every upload. This is set by the reconUploader.py, if not provided, or you can provide it yourself. If you already have a timestamp associated with an unfinished eman upload, can you try providing it in the upload (according to what has already been created, e.g. --timestamp=11jul18d50). I've done this on numerous occasions, where, for example, I would upload iterations 1-3, then kill the job, then upload iterations 4-6 (giving the correct timestamp), etc. If that works, I'll document this in.

On the other hand, perhaps in the webpages we can make it mandatory to have a timestamp there (defaulted as the date), so that this sort of confusion doesn't happen.

Actions #2

Updated by Anchi Cheng over 12 years ago

Dmitry,

Found another case of this in uploadFrealignRefine.py I fixed this one by moving the symbolic link after the iteration is completely uploaded. I suspect that the problem with eman upload is the same. python os.symlink must be rather aggressive that forces an existing file to symbolic link. I assume that your original intention is to avoid duplication. r16883

Actions #3

Updated by Anchi Cheng over 12 years ago

By the way, in Frealign case, the file that becomes a link is in the one in recon directory and linked to the volume in result_path. Indeed because each upload attempt wants to create new time-stamped volume, it does not detect that there is one from previous trial.

Actions #4

Updated by Anchi Cheng over 11 years ago

  • Affected Version changed from Appion/Leginon 2.2.0 (trunk) to Appion/Leginon 2.2.0

r17660 just allows me to test easier in uploadEMANRefine.py It is not a fix of this prblem in that script.

Actions

Also available in: Atom PDF