diff options
Diffstat (limited to 'cpp/src')
-rw-r--r-- | cpp/src/Freeze/.gitignore | 3 | ||||
-rw-r--r-- | cpp/src/Freeze/MapI.cpp | 48 | ||||
-rw-r--r-- | cpp/src/FreezeScript/.gitignore | 3 | ||||
-rw-r--r-- | cpp/src/Glacier2/.gitignore | 3 | ||||
-rw-r--r-- | cpp/src/Ice/.gitignore | 3 | ||||
-rw-r--r-- | cpp/src/IceBox/.gitignore | 3 | ||||
-rw-r--r-- | cpp/src/IceGrid/.gitignore | 3 | ||||
-rw-r--r-- | cpp/src/IcePatch2/.gitignore | 3 | ||||
-rw-r--r-- | cpp/src/IceStorm/.gitignore | 3 | ||||
-rw-r--r-- | cpp/src/Slice/.gitignore | 3 | ||||
-rw-r--r-- | cpp/src/Slice/PythonUtil.cpp | 2 | ||||
-rw-r--r-- | cpp/src/icecpp/.gitignore | 3 |
12 files changed, 65 insertions, 15 deletions
diff --git a/cpp/src/Freeze/.gitignore b/cpp/src/Freeze/.gitignore index 45c7dab1063..3a53a532bb3 100644 --- a/cpp/src/Freeze/.gitignore +++ b/cpp/src/Freeze/.gitignore @@ -1,3 +1,6 @@ +// Generated by makegitignore.py, Mon Jun 11 14:39:36 2007 + +// IMPORTANT: Do not edit this file -- any edits made here will be lost! BackgroundSaveEvictor.cpp DB.cpp CatalogData.cpp diff --git a/cpp/src/Freeze/MapI.cpp b/cpp/src/Freeze/MapI.cpp index 37c894dad0c..1011606f336 100644 --- a/cpp/src/Freeze/MapI.cpp +++ b/cpp/src/Freeze/MapI.cpp @@ -1491,18 +1491,20 @@ Freeze::MapIndexI::untypedCount(const Key& k, const ConnectionIPtr& connection) int result = 0; + DbTxn * txn = connection->dbTxn(); + try { for(;;) { Dbc* dbc = 0; - + try { // // Move to the first record // - _db->cursor(0, &dbc, 0); + _db->cursor(txn, &dbc, 0); bool found = (dbc->get(&dbKey, &dbValue, DB_SET) == 0); if(found) @@ -1527,9 +1529,16 @@ Freeze::MapIndexI::untypedCount(const Key& k, const ConnectionIPtr& connection) } catch(const DbDeadlockException&) { - // - // Ignored - // + if(txn != 0) + { + throw; + } + else + { + // + // Ignored + // + } } } @@ -1537,11 +1546,15 @@ Freeze::MapIndexI::untypedCount(const Key& k, const ConnectionIPtr& connection) { Warning out(connection->communicator()->getLogger()); out << "Deadlock in Freeze::MapIndexI::untypedCount while searching \"" - << _dbName << "\"; retrying ..."; + << _dbName << "\""; } + if(txn != 0) + { + throw; + } // - // Retry + // Otherwise retry // } catch(...) @@ -1554,20 +1567,29 @@ Freeze::MapIndexI::untypedCount(const Key& k, const ConnectionIPtr& connection) } catch(const DbDeadlockException&) { - // - // Ignored - // + if(txn != 0) + { + throw; + } + else + { + // + // Ignored + // + } } } throw; } } } + catch(const DbDeadlockException& dx) + { + throw DeadlockException(__FILE__, __LINE__, dx.what()); + } catch(const DbException& dx) { - DatabaseException ex(__FILE__, __LINE__); - ex.message = dx.what(); - throw ex; + throw DatabaseException(__FILE__, __LINE__, dx.what()); } return result; diff --git a/cpp/src/FreezeScript/.gitignore b/cpp/src/FreezeScript/.gitignore index 817dce61972..bae0bca0177 100644 --- a/cpp/src/FreezeScript/.gitignore +++ b/cpp/src/FreezeScript/.gitignore @@ -1,3 +1,6 @@ +// Generated by makegitignore.py, Mon Jun 11 14:39:36 2007 + +// IMPORTANT: Do not edit this file -- any edits made here will be lost! Grammar.cpp Grammar.h Scanner.cpp diff --git a/cpp/src/Glacier2/.gitignore b/cpp/src/Glacier2/.gitignore index a3d03a5ecbd..47517f709eb 100644 --- a/cpp/src/Glacier2/.gitignore +++ b/cpp/src/Glacier2/.gitignore @@ -1,3 +1,6 @@ +// Generated by makegitignore.py, Mon Jun 11 14:39:36 2007 + +// IMPORTANT: Do not edit this file -- any edits made here will be lost! PermissionsVerifierF.cpp PermissionsVerifier.cpp Router.cpp diff --git a/cpp/src/Ice/.gitignore b/cpp/src/Ice/.gitignore index d33dcdbeb84..91c23de8f5e 100644 --- a/cpp/src/Ice/.gitignore +++ b/cpp/src/Ice/.gitignore @@ -1,3 +1,6 @@ +// Generated by makegitignore.py, Mon Jun 11 14:39:36 2007 + +// IMPORTANT: Do not edit this file -- any edits made here will be lost! BuiltinSequences.cpp CommunicatorF.cpp Communicator.cpp diff --git a/cpp/src/IceBox/.gitignore b/cpp/src/IceBox/.gitignore index ea468c1e9a0..7e66c45dc9c 100644 --- a/cpp/src/IceBox/.gitignore +++ b/cpp/src/IceBox/.gitignore @@ -1,2 +1,5 @@ +// Generated by makegitignore.py, Mon Jun 11 14:39:36 2007 + +// IMPORTANT: Do not edit this file -- any edits made here will be lost! IceBox.cpp IceBox.h diff --git a/cpp/src/IceGrid/.gitignore b/cpp/src/IceGrid/.gitignore index 939db18840c..4459a0b2453 100644 --- a/cpp/src/IceGrid/.gitignore +++ b/cpp/src/IceGrid/.gitignore @@ -1,3 +1,6 @@ +// Generated by makegitignore.py, Mon Jun 11 14:39:36 2007 + +// IMPORTANT: Do not edit this file -- any edits made here will be lost! Admin.cpp Exception.cpp FileParser.cpp diff --git a/cpp/src/IcePatch2/.gitignore b/cpp/src/IcePatch2/.gitignore index 2467ad2c2fa..143854ab2d3 100644 --- a/cpp/src/IcePatch2/.gitignore +++ b/cpp/src/IcePatch2/.gitignore @@ -1,3 +1,6 @@ +// Generated by makegitignore.py, Mon Jun 11 14:39:36 2007 + +// IMPORTANT: Do not edit this file -- any edits made here will be lost! FileInfo.cpp FileServer.cpp FileInfo.h diff --git a/cpp/src/IceStorm/.gitignore b/cpp/src/IceStorm/.gitignore index 49077033139..96eb5114cee 100644 --- a/cpp/src/IceStorm/.gitignore +++ b/cpp/src/IceStorm/.gitignore @@ -1,3 +1,6 @@ +// Generated by makegitignore.py, Mon Jun 11 14:39:36 2007 + +// IMPORTANT: Do not edit this file -- any edits made here will be lost! IceStorm.cpp IceStormInternal.cpp LinkRecord.cpp diff --git a/cpp/src/Slice/.gitignore b/cpp/src/Slice/.gitignore index 817dce61972..bae0bca0177 100644 --- a/cpp/src/Slice/.gitignore +++ b/cpp/src/Slice/.gitignore @@ -1,3 +1,6 @@ +// Generated by makegitignore.py, Mon Jun 11 14:39:36 2007 + +// IMPORTANT: Do not edit this file -- any edits made here will be lost! Grammar.cpp Grammar.h Scanner.cpp diff --git a/cpp/src/Slice/PythonUtil.cpp b/cpp/src/Slice/PythonUtil.cpp index 5c93dd01e5f..9815b210aea 100644 --- a/cpp/src/Slice/PythonUtil.cpp +++ b/cpp/src/Slice/PythonUtil.cpp @@ -800,7 +800,6 @@ Slice::Python::CodeVisitor::visitClassDefStart(const ClassDefPtr& p) _out << ", "; } _out << '('; - _out << "'" << fixIdent((*t)->name()) << "', "; writeMetaData((*t)->getMetaData()); _out << ", "; writeType((*t)->type()); @@ -822,7 +821,6 @@ Slice::Python::CodeVisitor::visitClassDefStart(const ClassDefPtr& p) _out << ", "; } _out << '('; - _out << "'" << fixIdent((*t)->name()) << "', "; writeMetaData((*t)->getMetaData()); _out << ", "; writeType((*t)->type()); diff --git a/cpp/src/icecpp/.gitignore b/cpp/src/icecpp/.gitignore index 67da133e7ee..52fc6c66ffe 100644 --- a/cpp/src/icecpp/.gitignore +++ b/cpp/src/icecpp/.gitignore @@ -1 +1,4 @@ +// Generated by makegitignore.py, Mon Jun 11 14:39:36 2007 + +// IMPORTANT: Do not edit this file -- any edits made here will be lost! cexp.c |