summaryrefslogtreecommitdiff
path: root/cpp/src/IceGrid/Database.cpp
diff options
context:
space:
mode:
authorBenoit Foucher <benoit@zeroc.com>2017-07-06 12:04:48 +0200
committerBenoit Foucher <benoit@zeroc.com>2017-07-06 12:04:48 +0200
commit865d0fd96d27be7fe0e4acfc499faac07edb7a7e (patch)
tree22fc87187a82d9b98d84c0e99bfff9224753213f /cpp/src/IceGrid/Database.cpp
parentFixed ICE-8156 - iOS controller crash (diff)
downloadice-865d0fd96d27be7fe0e4acfc499faac07edb7a7e.tar.bz2
ice-865d0fd96d27be7fe0e4acfc499faac07edb7a7e.tar.xz
ice-865d0fd96d27be7fe0e4acfc499faac07edb7a7e.zip
Fixed ICE-8211 - IceGrid registry inconsistency when resolving dynamically registered replicagroup endpoints
Diffstat (limited to 'cpp/src/IceGrid/Database.cpp')
-rw-r--r--cpp/src/IceGrid/Database.cpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/cpp/src/IceGrid/Database.cpp b/cpp/src/IceGrid/Database.cpp
index d50d912cff1..00ceef6b4bb 100644
--- a/cpp/src/IceGrid/Database.cpp
+++ b/cpp/src/IceGrid/Database.cpp
@@ -1095,6 +1095,11 @@ Database::getAdapterDirectProxy(const string& id, const Ice::EncodingVersion& en
Ice::EndpointSeq endpoints;
vector<AdapterInfo> infos = findByReplicaGroupId(txn, _adapters, _adaptersByGroupId, id);
+ if(infos.empty())
+ {
+ throw AdapterNotExistException(id);
+ }
+
filterAdapterInfos("", id, _pluginFacade, con, ctx, infos);
for(unsigned int i = 0; i < infos.size(); ++i)
{
@@ -1108,8 +1113,7 @@ Database::getAdapterDirectProxy(const string& id, const Ice::EncodingVersion& en
{
return _communicator->stringToProxy("dummy:default")->ice_endpoints(endpoints);
}
-
- throw AdapterNotExistException(id);
+ return 0;
}
void