diff options
author | Benoit Foucher <benoit@zeroc.com> | 2005-09-19 11:33:43 +0000 |
---|---|---|
committer | Benoit Foucher <benoit@zeroc.com> | 2005-09-19 11:33:43 +0000 |
commit | 642a066529ba18a12e2a5e6f91b4c67bb4c3d6e3 (patch) | |
tree | f7eaa7d966e2b90979b40dc676c5b5528bcdd60c /cpp/src/IceGrid/Database.cpp | |
parent | Added simple demo (diff) | |
download | ice-642a066529ba18a12e2a5e6f91b4c67bb4c3d6e3.tar.bz2 ice-642a066529ba18a12e2a5e6f91b4c67bb4c3d6e3.tar.xz ice-642a066529ba18a12e2a5e6f91b4c67bb4c3d6e3.zip |
Bug fixes
Diffstat (limited to 'cpp/src/IceGrid/Database.cpp')
-rw-r--r-- | cpp/src/IceGrid/Database.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/cpp/src/IceGrid/Database.cpp b/cpp/src/IceGrid/Database.cpp index 4c05329a868..46529ec0ac0 100644 --- a/cpp/src/IceGrid/Database.cpp +++ b/cpp/src/IceGrid/Database.cpp @@ -1046,12 +1046,20 @@ Database::reload(const ApplicationHelper& oldApp, const ApplicationHelper& newAp ReplicatedAdapterDescriptorSeq::const_iterator r; for(r = oldAdpts.begin(); r != oldAdpts.end(); ++r) { + for(ObjectDescriptorSeq::const_iterator o = r->objects.begin(); o != r->objects.end(); ++o) + { + _objectCache.remove(o->id); + } _adapterCache.get(r->id, false)->disableReplication(); } const ReplicatedAdapterDescriptorSeq& newAdpts = newApp.getInstance().replicatedAdapters; for(r = newAdpts.begin(); r != newAdpts.end(); ++r) { _adapterCache.get(r->id, true)->enableReplication(r->loadBalancing); + for(ObjectDescriptorSeq::const_iterator o = r->objects.begin(); o != r->objects.end(); ++o) + { + _objectCache.add(r->id, "", *o); + } } map<string, ServerInfo> oldServers = oldApp.getServerInfos(); |