aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorConstantin Michael <constantin@codesynthesis.com>2011-11-30 10:49:17 +0200
committerConstantin Michael <constantin@codesynthesis.com>2011-11-30 11:32:08 +0200
commit24c8951999e1dc9dc4419dcf5415576ae8b0d55d (patch)
treeb7599e13f60da63cf1dab255f463853a86452770
parentb7f64fe7f65eb286b5b0c93776fe38bd682b9552 (diff)
Translate ORA-2049 as a timeout error and ORA-3113 as a connection lost error
-rw-r--r--odb/oracle/error.cxx4
1 files changed, 3 insertions, 1 deletions
diff --git a/odb/oracle/error.cxx b/odb/oracle/error.cxx
index 008591a..b822256 100644
--- a/odb/oracle/error.cxx
+++ b/odb/oracle/error.cxx
@@ -115,9 +115,11 @@ namespace odb
e == 104) // Deadlock detected; all public servers blocked.
nc = code_deadlock;
else if (e == 51 || // Timeout occurred while waiting for a resource.
- e == 54) // Resource busy and acquisition timeout expired.
+ e == 54 || // Resource busy and acquisition timeout expired.
+ e == 2049) // Distributed lock timeout.
nc = code_timeout;
else if (e == 28 || // Session has been killed.
+ e == 3113 || // End-of-file on communication channel.
e == 3135 || // Connection lost contact.
e == 3136 || // Inbound connection timed out.
e == 3138) // Connection terminated.