summaryrefslogtreecommitdiff
path: root/cpp/src/Freeze/IndexI.cpp
diff options
context:
space:
mode:
authorBernard Normier <bernard@zeroc.com>2005-10-03 16:57:34 +0000
committerBernard Normier <bernard@zeroc.com>2005-10-03 16:57:34 +0000
commitd3578a4742a4d46d9ee38aa37e18f5483759278c (patch)
tree790b53f267cb55d8f9993d9338cbbbafec9886af /cpp/src/Freeze/IndexI.cpp
parentFixed bogus dependency on Internal.h in icegridadmin (diff)
downloadice-d3578a4742a4d46d9ee38aa37e18f5483759278c.tar.bz2
ice-d3578a4742a4d46d9ee38aa37e18f5483759278c.tar.xz
ice-d3578a4742a4d46d9ee38aa37e18f5483759278c.zip
Refactored code to work-around DB 4.3's DB_BUFFER_SMALL bug
Diffstat (limited to 'cpp/src/Freeze/IndexI.cpp')
-rw-r--r--cpp/src/Freeze/IndexI.cpp12
1 files changed, 7 insertions, 5 deletions
diff --git a/cpp/src/Freeze/IndexI.cpp b/cpp/src/Freeze/IndexI.cpp
index 1b6ee29b84e..cb7694b5906 100644
--- a/cpp/src/Freeze/IndexI.cpp
+++ b/cpp/src/Freeze/IndexI.cpp
@@ -100,9 +100,13 @@ Freeze::IndexI::untypedFindFirst(const Key& bytes, Int firstN) const
}
break; // for(;;)
}
- catch(const DbMemoryException& dx)
+ catch(const DbDeadlockException&)
{
- handleMemoryException(dx, pkey, pdbKey);
+ throw;
+ }
+ catch(const DbException& dx)
+ {
+ handleDbException(dx, pkey, pdbKey, __FILE__, __LINE__);
}
}
}
@@ -161,9 +165,7 @@ Freeze::IndexI::untypedFindFirst(const Key& bytes, Int firstN) const
}
catch(const DbException& dx)
{
- DatabaseException ex(__FILE__, __LINE__);
- ex.message = dx.what();
- throw ex;
+ handleDbException(dx, __FILE__, __LINE__);
}
return identities;