Task #5802 (new)
Opened 13 years ago
Last modified 8 years ago
Add further ConcurrencyException handling
Reported by: | jamoore | Owned by: | jburel |
---|---|---|---|
Priority: | major | Milestone: | Unscheduled |
Component: | API | Version: | n.a. |
Keywords: | n.a. | Cc: | atarkowska, wmoore |
Resources: | n.a. | Referenced By: | n.a. |
References: | n.a. | Remaining Time: | n.a. |
Sprint: | n.a. |
Description
As a follow on to #5639, it would be good if clients could also handle ConcurrenyException and subclasses coming from other API methods. For that ticket, I added a mapping from the postgresql deadlock detected exception to our concurrency exception, but the change didn't get propagated to the clients. What this means is that two threads/processes/clients tried to modify the same rows but in a different order. Postgresql throws an exception on only one of the threads (the "loser" thread) so that the server doesn't block. That thread can in most contexts be safely retried.
Passing to J-M for implementation in Insight first (after 4.3.0 release)
Note: in the specific case of #5639, this wouldn't have helped, since the exception was encoded in the reports return value from DeleteHandle. We should also address how to properly communicate to the clients exactly which exception was thrown.
Change History (8)
comment:1 Changed 13 years ago by jmoore
- Milestone changed from OMERO-Beta4.3.1 to OMERO-Beta4.3.2
comment:2 Changed 13 years ago by jburel
Time for that?
comment:3 Changed 13 years ago by jmoore
Up to you, J-M. I'm not sure how hard it is to add your your exception handler. Probably pretty difficult, actually. But it should definitely go on the list of things we should start handling from this point forward.
comment:4 Changed 13 years ago by jburel
- Milestone changed from OMERO-Beta4.3.2 to Unscheduled
Pushing, several things have taken priority e.g. omero as teaching tool, modulus proposal etc.
comment:5 Changed 12 years ago by jburel
- Milestone changed from Unscheduled to OMERO-Beta4.4
comment:6 Changed 12 years ago by jburel
- Milestone changed from OMERO-Beta4.4 to Future
I totally missed that one. Pushing to Future,
comment:7 Changed 11 years ago by jburel
Looking at the insight code, the ConcurrenyExceptions are currently handled in 2 cases: creation of rendering engine and plane retrieval (for pyramid). Need to be reviewed.
comment:8 Changed 8 years ago by jamoore
- Milestone changed from Future to Unscheduled
Need to handle this together (not while people are away on vacation) Pushing