Hi Daan, Does it look good to you? Thanks Alex Ough
On Mon, Feb 10, 2014 at 1:07 PM, Alex Ough <alex.o...@sungard.com> wrote: > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/17790/ > Review request for cloudstack. > By Alex Ough. > > *Updated Feb. 10, 2014, 7:06 p.m.* > Changes > > Updates for Daan's request. > > *Repository: * cloudstack-git > Description > > Currently, under the environment of cloudstack with multiple regions, each > region has its own management server running with a separate database, which > will cause data discrepancies when users create/update/delete > domain/account/user data independently in each management server. So to > support multiple regions and provide one point of entry for each customer, > this implementation duplicates domain/account/user information of customers > in one region to all of the regions independently whenever there is any > change. > https://issues.apache.org/jira/browse/CLOUDSTACK-4992https://cwiki.apache.org/confluence/display/CLOUDSTACK/Domain-Account-User+Sync+Up+Among+Multiple+Regions > > Testing > > 1. Successfully tested real time synchronization as soon as resources are > created/deleted/modified in one region. > 2. Successfully tested full scans to synchronize resources that were missed > during real time synchronization because of any reasons like network > connection issues. > 3. The tests were done manually and also automatically by randomly generating > changes each region. > > Diffs (updated) > > - api/src/com/cloud/domain/Domain.java (befed07) > - api/src/com/cloud/event/EventTypes.java (77d2fab) > - api/src/com/cloud/user/Account.java (940a0eb) > - api/src/com/cloud/user/AccountService.java (8153a3f) > - api/src/com/cloud/user/User.java (dcf27a0) > - api/src/com/cloud/user/UserAccount.java (0cb0f69) > - api/src/org/apache/cloudstack/api/ApiConstants.java (68abf8d) > - api/src/org/apache/cloudstack/api/BaseCmd.java (acc1568) > - api/src/org/apache/cloudstack/api/response/AccountResponse.java > (957936b) > - api/src/org/apache/cloudstack/api/response/DomainResponse.java > (736a96c) > - api/src/org/apache/cloudstack/api/response/UserResponse.java > (e70a310) > - api/src/org/apache/cloudstack/region/Region.java (c696fb2) > - > engine/schema/resources/META-INF/cloudstack/core/spring-engine-schema-core-daos-context.xml > (ea0bad9) > - engine/schema/src/com/cloud/domain/DomainVO.java (a87bedc) > - engine/schema/src/com/cloud/rmap/RmapVO.java (PRE-CREATION) > - engine/schema/src/com/cloud/rmap/dao/RmapDao.java (PRE-CREATION) > - engine/schema/src/com/cloud/rmap/dao/RmapDaoImpl.java (PRE-CREATION) > - engine/schema/src/com/cloud/user/AccountVO.java (4a7e73b) > - engine/schema/src/com/cloud/user/UserAccountVO.java (cfad617) > - engine/schema/src/com/cloud/user/UserVO.java (2a85758) > - engine/schema/src/org/apache/cloudstack/region/RegionVO.java > (36db8dd) > - framework/db/src/com/cloud/utils/db/Attribute.java (22fd969) > - framework/db/src/com/cloud/utils/db/GenericDao.java (ef25d7f) > - framework/db/src/com/cloud/utils/db/GenericDaoBase.java (177cd5b) > - framework/db/src/com/cloud/utils/db/SqlGenerator.java (473e839) > - > plugins/event-bus/rabbitmq/src/org/apache/cloudstack/mom/rabbitmq/AccountSubscriber.java > (PRE-CREATION) > - > plugins/event-bus/rabbitmq/src/org/apache/cloudstack/mom/rabbitmq/DomainSubscriber.java > (PRE-CREATION) > - > plugins/event-bus/rabbitmq/src/org/apache/cloudstack/mom/rabbitmq/MultiRegionEventBus.java > (PRE-CREATION) > - > plugins/event-bus/rabbitmq/src/org/apache/cloudstack/mom/rabbitmq/MultiRegionSubscriber.java > (PRE-CREATION) > - > plugins/event-bus/rabbitmq/src/org/apache/cloudstack/mom/rabbitmq/UserSubscriber.java > (PRE-CREATION) > - > plugins/network-elements/juniper-contrail/test/org/apache/cloudstack/network/contrail/management/MockAccountManager.java > (195e932) > - server/resources/META-INF/cloudstack/core/spring-event-bus-context.xml > (PRE-CREATION) > - server/src/com/cloud/api/ApiDispatcher.java (9624c61) > - server/src/com/cloud/api/ApiResponseHelper.java (5bd8241) > - server/src/com/cloud/api/query/dao/AccountJoinDaoImpl.java (edbd3ae) > - server/src/com/cloud/api/query/dao/UserAccountJoinDaoImpl.java > (4ad8a8f) > - server/src/com/cloud/api/query/vo/AccountJoinVO.java (2ec45d3) > - server/src/com/cloud/api/query/vo/UserAccountJoinVO.java (c020c01) > - server/src/com/cloud/event/ActionEventUtils.java (00122de) > - server/src/com/cloud/projects/ProjectManagerImpl.java (22e2020) > - server/src/com/cloud/region/api_interface/AccountInterface.java > (PRE-CREATION) > - server/src/com/cloud/region/api_interface/BaseInterface.java > (PRE-CREATION) > - server/src/com/cloud/region/api_interface/DomainInterface.java > (PRE-CREATION) > - server/src/com/cloud/region/api_interface/UserInterface.java > (PRE-CREATION) > - server/src/com/cloud/region/service/AccountFullSyncProcessor.java > (PRE-CREATION) > - server/src/com/cloud/region/service/AccountService.java > (PRE-CREATION) > - server/src/com/cloud/region/service/BaseService.java (PRE-CREATION) > - server/src/com/cloud/region/service/DomainFullSyncProcessor.java > (PRE-CREATION) > - server/src/com/cloud/region/service/DomainService.java (PRE-CREATION) > - server/src/com/cloud/region/service/FullScanner.java (PRE-CREATION) > - server/src/com/cloud/region/service/FullSyncProcessor.java > (PRE-CREATION) > - server/src/com/cloud/region/service/LocalAccountManager.java > (PRE-CREATION) > - server/src/com/cloud/region/service/LocalDomainManager.java > (PRE-CREATION) > - server/src/com/cloud/region/service/LocalUserManager.java > (PRE-CREATION) > - server/src/com/cloud/region/service/RemoteAccountEventProcessor.java > (PRE-CREATION) > - server/src/com/cloud/region/service/RemoteDomainEventProcessor.java > (PRE-CREATION) > - server/src/com/cloud/region/service/RemoteEventProcessor.java > (PRE-CREATION) > - server/src/com/cloud/region/service/RemoteUserEventProcessor.java > (PRE-CREATION) > - server/src/com/cloud/region/service/UserFullSyncProcessor.java > (PRE-CREATION) > - server/src/com/cloud/region/service/UserService.java (PRE-CREATION) > - server/src/com/cloud/region/simulator/AccountLocalGenerator.java > (PRE-CREATION) > - server/src/com/cloud/region/simulator/AccountLocalGeneratorEvent.java > (PRE-CREATION) > - server/src/com/cloud/region/simulator/AutoGenerator.java > (PRE-CREATION) > - server/src/com/cloud/region/simulator/DomainLocalGenerator.java > (PRE-CREATION) > - server/src/com/cloud/region/simulator/DomainLocalGeneratorEvent.java > (PRE-CREATION) > - server/src/com/cloud/region/simulator/LocalGenerator.java > (PRE-CREATION) > - server/src/com/cloud/region/simulator/UserLocalGenerator.java > (PRE-CREATION) > - server/src/com/cloud/region/simulator/UserLocalGeneratorEvent.java > (PRE-CREATION) > - server/src/com/cloud/server/StatsCollector.java (45fc43e) > - server/src/com/cloud/user/AccountManager.java (2e909c8) > - server/src/com/cloud/user/AccountManagerImpl.java (d367653) > - server/src/com/cloud/user/DomainManager.java (7bc2abb) > - server/src/com/cloud/user/DomainManagerImpl.java (036110b) > - server/test/com/cloud/user/MockAccountManagerImpl.java (38cc1a84) > - server/test/com/cloud/user/MockDomainManagerImpl.java (aab8001) > - setup/db/db/schema-421to430.sql (316cbe9) > - tools/devcloud/devcloud-advanced.cfg (fb25d03) > > View Diff <https://reviews.apache.org/r/17790/diff/> >