diff options
author | Bernard Normier <bernard@zeroc.com> | 2005-10-03 16:57:34 +0000 |
---|---|---|
committer | Bernard Normier <bernard@zeroc.com> | 2005-10-03 16:57:34 +0000 |
commit | d3578a4742a4d46d9ee38aa37e18f5483759278c (patch) | |
tree | 790b53f267cb55d8f9993d9338cbbbafec9886af /cpp/src/Freeze/EvictorIteratorI.cpp | |
parent | Fixed bogus dependency on Internal.h in icegridadmin (diff) | |
download | ice-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/EvictorIteratorI.cpp')
-rw-r--r-- | cpp/src/Freeze/EvictorIteratorI.cpp | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/cpp/src/Freeze/EvictorIteratorI.cpp b/cpp/src/Freeze/EvictorIteratorI.cpp index efc3cb26d37..87ef034053d 100644 --- a/cpp/src/Freeze/EvictorIteratorI.cpp +++ b/cpp/src/Freeze/EvictorIteratorI.cpp @@ -150,9 +150,13 @@ Freeze::EvictorIteratorI::nextBatch() } break; } - catch(const DbMemoryException& dx) + catch(const DbDeadlockException&) { - handleMemoryException(dx, _key, dbKey); + throw; + } + catch(const DbException& dx) + { + handleDbException(dx, _key, dbKey, __FILE__, __LINE__); } } } @@ -204,9 +208,7 @@ Freeze::EvictorIteratorI::nextBatch() } catch(const DbException& dx) { - DatabaseException ex(__FILE__, __LINE__); - ex.message = dx.what(); - throw ex; + handleDbException(dx, __FILE__, __LINE__); } if(_batch.size() == 0) |