Notice: In order to edit this ticket you need to be either: a Product Owner, The owner or the reporter of the ticket, or, in case of a Task not yet assigned, a team_member"

Task #5802 (new)

Opened 8 years ago

Last modified 4 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 8 years ago by jmoore

  • Milestone changed from OMERO-Beta4.3.1 to OMERO-Beta4.3.2

Need to handle this together (not while people are away on vacation) Pushing

comment:2 Changed 8 years ago by jburel

Time for that?

comment:3 Changed 8 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 8 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 8 years ago by jburel

  • Milestone changed from Unscheduled to OMERO-Beta4.4

comment:6 Changed 7 years ago by jburel

  • Milestone changed from OMERO-Beta4.4 to Future

I totally missed that one. Pushing to Future,

comment:7 Changed 7 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 4 years ago by jamoore

  • Milestone changed from Future to Unscheduled
Note: See TracTickets for help on using tickets. You may also have a look at Agilo extensions to the ticket.

1.3.13-PRO © 2008-2011 Agilo Software all rights reserved (this page was served in: 0.131719 sec.)

We're Hiring!