Subject | Detecting transaction conflict? |
---|---|
Author | Martin Fay |
Post date | 2008-01-14T10:07:12Z |
I've been trying to work out how to decide if a transaction has failed due to
a conflict (so that it can be retried) and I'm failing to find any clear
documentation. I believe this would have something to do with receiving
particular GdsCode values, but which exactly? If I provoke an update conflict
with a test app developed using the Firebird .net provider I get back a list
of 3 GdsCode values (isc_deadlock, isc_update_conflict, isc_deadlock), should
I be looking for this explicit combination, one of them, some of them?
Alternatively maybe the best practise is to retry any failed transaction even
if the cause of failure was i.e. bad syntax in an SQL statement.
Thanks in advance for any assistance!
Martin
[Non-text portions of this message have been removed]
a conflict (so that it can be retried) and I'm failing to find any clear
documentation. I believe this would have something to do with receiving
particular GdsCode values, but which exactly? If I provoke an update conflict
with a test app developed using the Firebird .net provider I get back a list
of 3 GdsCode values (isc_deadlock, isc_update_conflict, isc_deadlock), should
I be looking for this explicit combination, one of them, some of them?
Alternatively maybe the best practise is to retry any failed transaction even
if the cause of failure was i.e. bad syntax in an SQL statement.
Thanks in advance for any assistance!
Martin
[Non-text portions of this message have been removed]