summaryrefslogtreecommitdiff
path: root/cpp/src/IceGrid/Database.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'cpp/src/IceGrid/Database.cpp')
-rw-r--r--cpp/src/IceGrid/Database.cpp26
1 files changed, 25 insertions, 1 deletions
diff --git a/cpp/src/IceGrid/Database.cpp b/cpp/src/IceGrid/Database.cpp
index da8b3f4ad96..3a362feb35a 100644
--- a/cpp/src/IceGrid/Database.cpp
+++ b/cpp/src/IceGrid/Database.cpp
@@ -172,6 +172,11 @@ Database::Database(const Ice::ObjectAdapterPtr& adapter,
Ice::Warning warn(_traceLevels->logger);
warn << "invalid application `" << p->first << "':\n" << reason;
}
+ catch(const char* reason)
+ {
+ Ice::Warning warn(_traceLevels->logger);
+ warn << "invalid application `" << p->first << "':\n" << reason;
+ }
}
}
@@ -346,6 +351,12 @@ Database::updateApplicationDescriptor(ObserverSessionI* session, const Applicati
ex.reason = reason;
throw ex;
}
+ catch(const char* reason)
+ {
+ DeploymentException ex;
+ ex.reason = reason;
+ throw ex;
+ }
serial = ++_serial;
}
@@ -400,6 +411,12 @@ Database::syncApplicationDescriptor(ObserverSessionI* session, const Application
ex.reason = reason;
throw ex;
}
+ catch(const char* reason)
+ {
+ DeploymentException ex;
+ ex.reason = reason;
+ throw ex;
+ }
serial = ++_serial;
}
@@ -446,6 +463,12 @@ Database::removeApplicationDescriptor(ObserverSessionI* session, const std::stri
ex.reason = reason;
throw ex;
}
+ catch(const char* reason)
+ {
+ DeploymentException ex;
+ ex.reason = reason;
+ throw ex;
+ }
serial = ++_serial;
}
@@ -1074,7 +1097,8 @@ Database::reload(const ApplicationHelper& oldApp, const ApplicationHelper& newAp
{
load.push_back(p->second);
}
- else if(ServerHelper(p->second.descriptor) != ServerHelper(q->second.descriptor))
+ else if(p->second.node != q->second.node ||
+ ServerHelper(p->second.descriptor) != ServerHelper(q->second.descriptor))
{
entries.push_back(_serverCache.remove(p->first, false)); // Don't destroy the server if it was updated.
load.push_back(p->second);