summaryrefslogtreecommitdiff
path: root/cpp/src/IceGrid/ServerCache.cpp
diff options
context:
space:
mode:
authorBenoit Foucher <benoit@zeroc.com>2006-05-29 09:51:28 +0000
committerBenoit Foucher <benoit@zeroc.com>2006-05-29 09:51:28 +0000
commita6cb3af17287c96cb1ed307b42fe9633d1905630 (patch)
tree93dd4bfa368f581998fbcf20802e84fb3f22ef8e /cpp/src/IceGrid/ServerCache.cpp
parentMore changes for inconsistent ice_* proxy methods (diff)
downloadice-a6cb3af17287c96cb1ed307b42fe9633d1905630.tar.bz2
ice-a6cb3af17287c96cb1ed307b42fe9633d1905630.tar.xz
ice-a6cb3af17287c96cb1ed307b42fe9633d1905630.zip
Property set bug fixes, locator tracing.
Diffstat (limited to 'cpp/src/IceGrid/ServerCache.cpp')
-rw-r--r--cpp/src/IceGrid/ServerCache.cpp19
1 files changed, 18 insertions, 1 deletions
diff --git a/cpp/src/IceGrid/ServerCache.cpp b/cpp/src/IceGrid/ServerCache.cpp
index 62fdfe8bd33..8e38f837418 100644
--- a/cpp/src/IceGrid/ServerCache.cpp
+++ b/cpp/src/IceGrid/ServerCache.cpp
@@ -580,7 +580,24 @@ ServerEntry::syncImpl(bool waitForUpdate)
}
if(_exception.get())
{
- _exception->ice_throw();
+ try
+ {
+ _exception->ice_throw();
+ }
+ catch(const DeploymentException&)
+ {
+ throw;
+ }
+ catch(const NodeUnreachableException&)
+ {
+ throw;
+ }
+ catch(const Ice::Exception& ex)
+ {
+ ostringstream os;
+ os << "unexpected exception while synchronizing server `" + _id + "':\n" << ex;
+ throw DeploymentException(os.str());
+ }
}
}
}