cloudstack-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Alex Ough" <alex.o...@sungard.com>
Subject Re: Review Request 17790: Domain-Account-User Sync Up Among Multiple Regions
Date Mon, 10 Feb 2014 19:07:00 GMT

-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/17790/
-----------------------------------------------------------

(Updated Feb. 10, 2014, 7:06 p.m.)


Review request for cloudstack.


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-4992
https://cwiki.apache.org/confluence/display/CLOUDSTACK/Domain-Account-User+Sync+Up+Among+Multiple+Regions


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 

Diff: https://reviews.apache.org/r/17790/diff/


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.


Thanks,

Alex Ough


Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message