Bug #483
closed
Crashed jobs are reported as being completed jobs.
Added by Bridget Carragher over 14 years ago.
Updated about 14 years ago.
Affected Version:
Appion/Leginon 2.0.2
Description
When ACE1 and ACE2 fail to run they still show up as having jobs complete on the web browser.
Do we need some kind of error list that allows you to see how and why they failed - if you close the window with the job update then you lose this. If the job fails I think it should be listed and then you can look at the last lines of the log maybe to diagnose. On the other hand we don;t wnat to clutter the web pages with failed jobs. Anyone have a good idea for how to handle this?
- Subject changed from Ace web update error to Crashed jobs are reported as being completed jobs.
The problem is that the web page decides when the program starts running and is finished. The python program has no say in the matter. I am working on transitioning this to a python-centric system when if python crashes it will set the flag to error and display it in the menu, but it needs more thought.
- Target version set to Appion/Leginon 2.0.0
- Status changed from New to Assigned
- Assignee set to Neil Voss
- Target version changed from Appion/Leginon 2.0.0 to Appion/Leginon 2.1.0
- Assignee deleted (
Neil Voss)
- Status changed from Assigned to In Code Review
- Assignee set to Amber Herold
- % Done changed from 0 to 100
if the job crashes, set the status to 'E' for error, we now need to do something with in the menu.
- Assignee changed from Amber Herold to Neil Voss
Couple things:
1. I don't understand why setJobToRun and setJobToDone return false if the job is already set to the desired status. This makes it difficult to tell if there is an error or you just called the function needlessly.
2. self.successful_run = True is called even if setJobToDone fails in the line above it. Not sure if that could cause inconsistencies in the interface...
The setJob command returns True if something happened, otherwise it return False. It is used to determine, hye did I set this job to run or was it already running. If there is an error the function does not return because the program will crash.
successful_run has nothing to do with the setJobToDone(), because if you get to the point of running the close function then the job ran successfully. If the program crashes before running the close() function successful_run will still be False and then the del() function will still be run and the job will be set to error. Under normal conditions you will run close() and then del(), close set successful_run to True and setJobToError is skipped in the del() function.
- Assignee changed from Neil Voss to Amber Herold
- Status changed from In Code Review to In Test
- Assignee changed from Amber Herold to Anke Mulder
Anke, can you test this today since Bridget will be out for so long? When done testing please set the status to "merge" so that Neil can add the code to the 2.0 Branch.
- Assignee changed from Anke Mulder to Amber Herold
- Affected Version set to Appion/Leginon 2.0.2
- Show in known bugs set to No
- Status changed from In Test to Closed
Also available in: Atom
PDF