
|
If you were logged in you would be able to see more operations.
|
|
|
| Resolution Date: |
19/Oct/08 09:31 PM
|
| Date of First Response: |
22/Dec/08 10:34 PM
|
| Tester: |
Corey Welton
|
| VCS Revision: |
1,807
|
|
(11:27:50) mazz: hmmm... I just ran a group operation and all the resource ops are succesful, but the group op still says "in progress"
...
(11:30:46) joseph: did u execute serially or concurrently?
(11:31:05) joseph: i'm gonna take a shot in the dark and say concurrent
(11:31:28) mazz: concurrent
(11:31:36) joseph: hmm...yes
(11:31:41) joseph: this is more thread visibility issues
(11:31:54) joseph: you must have had the last two res ops completing at the same time
(11:32:06) joseph: they both check the db and find that there is at least one other res op not yet complete
(11:32:17) joseph: so neither of them set the group op to done
(11:32:43) mazz: yeah... well, we have that job running that should fix this eventually
(11:32:47) joseph: we should update the CheckForTimedOutOperationsJob
(11:32:53) joseph: today, i think it only checks for time outs
(11:32:59) joseph: doesn't check for logically complete
(11:33:02) mazz: oh
(11:33:33) joseph: i was 1/2 right
(11:34:10) joseph: it checks for res op timeouts, group op timeouts, and group op failures (due to any contained res op failure)
(11:34:15) joseph: doesn't check for successes
TODO - update CheckForTimedOutOperationsJob to check for all terminating conditions (i.e., all contained res op children are NOT "in progress")
|
|
Description
|
(11:27:50) mazz: hmmm... I just ran a group operation and all the resource ops are succesful, but the group op still says "in progress"
...
(11:30:46) joseph: did u execute serially or concurrently?
(11:31:05) joseph: i'm gonna take a shot in the dark and say concurrent
(11:31:28) mazz: concurrent
(11:31:36) joseph: hmm...yes
(11:31:41) joseph: this is more thread visibility issues
(11:31:54) joseph: you must have had the last two res ops completing at the same time
(11:32:06) joseph: they both check the db and find that there is at least one other res op not yet complete
(11:32:17) joseph: so neither of them set the group op to done
(11:32:43) mazz: yeah... well, we have that job running that should fix this eventually
(11:32:47) joseph: we should update the CheckForTimedOutOperationsJob
(11:32:53) joseph: today, i think it only checks for time outs
(11:32:59) joseph: doesn't check for logically complete
(11:33:02) mazz: oh
(11:33:33) joseph: i was 1/2 right
(11:34:10) joseph: it checks for res op timeouts, group op timeouts, and group op failures (due to any contained res op failure)
(11:34:15) joseph: doesn't check for successes
TODO - update CheckForTimedOutOperationsJob to check for all terminating conditions (i.e., all contained res op children are NOT "in progress") |
Show » |
|
* find group ops in progress whose children are all complete
* if group op has timed out, then check children
* if any child has failed, the group op has failed...otherwise the group op has completed
the logic should be 2-part:
* find all group ops in progress that have even one child that isn't complete
* if the group op has timed out, then the group op has failed with TIMEOUT as a reason - should children be canceled?
* find all group ops in progress that have no children in progress
* if any child has failed, the group op has failed...otherwise the group op has completed