You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@cloudstack.apache.org by Daan Hoogland <da...@gmail.com> on 2014/03/01 21:26:10 UTC

Re: Review Request 17790: Domain-Account-User Sync Up Among Multiple Regions

Ha Alex,

branch 4.3 is going to be a problem. We will be able to release this
with 4.4 if we hurry.

On Fri, Feb 28, 2014 at 4:01 PM, Alex Ough <al...@sungard.com> wrote:
> Hi Daan,
>
> 1. Yes, we'll update the request once all the unit tests are completed.
> 2. And yes, it is a branch from 4.3
> 3. I'm using the global parameter, called 'region.auto.generation.interval'
> and the value is 0 (millisec) by default.
>     If you set the value more than 0, it will automatically
> create/update/remove domains/accounts/users with that interval,
>     which will trigger the scheduled full scan to sync the newly changed
> resources.
>
> Let me know if you need more info.
> Thanks
> Alex Ough
>
>
> On Thu, Feb 27, 2014 at 3:50 PM, Daan Hoogland <da...@gmail.com>
> wrote:
>>
>> I see, great.
>>
>> I will find a moment to apply it and test. It looks good at first sight.
>>
>> Don't forget adding the license header to the new files. Are you
>> updating the review request with these tests?
>>
>> You are using a local branch to implement this on,
>> 'alexoughsg/Albatross'  is a fork of cloudstack, is it?
>> Let's discuss merge back and testing.
>> Do you have a integration test script in Marvin and/or scenarios that
>> will ensure continued functionality for the sync feature?
>>
>>
>> thanks,
>> Daan
>>
>> On Thu, Feb 27, 2014 at 9:19 PM, Alex Ough <al...@sungard.com> wrote:
>> > Hi Daan,
>> >
>> > We started to work on implementing unit tests and checked in some of
>> > them,
>> > so please review them and let us know if there is any
>> > comments/suggestions.
>> >
>> >
>> > https://github.com/alexoughsg/Albatross/commit/fca94db36054ee35f5da85c69c2471430e0eebfe
>> >
>> > Thanks
>> > Alex Ough
>> >
>> >
>> > On Thu, Feb 13, 2014 at 3:15 PM, Alex Ough <al...@sungard.com>
>> > wrote:
>> >>
>> >> We're just about to add unit tests, so I'll add them once completed.
>> >>
>> >> Thanks
>> >> Alex Ough
>> >>
>> >>
>> >> On Thu, Feb 13, 2014 at 3:12 PM, Daan Hoogland
>> >> <da...@gmail.com>
>> >> wrote:
>> >>>
>> >>> h Alex,
>> >>>
>> >>>  looks alright (i did mean with newlines but I don't know if this is
>> >>> actually caught by our checkstyle run) I was wondering if you have any
>> >>> unit
>> >>> tests for your code. I can see you did take testing seriously and I
>> >>> would
>> >>> like to see this formalized for future reference and repetition on
>> >>> updates.
>> >>> Can you add some stuff in this line?
>> >>>
>> >>> thanks,
>> >>> Daan
>> >>>
>> >>>
>> >>> On Thu, Feb 13, 2014 at 9:52 PM, Alex Ough <al...@sungard.com>
>> >>> wrote:
>> >>>>
>> >>>> Hi Daan,
>> >>>> Does it look good to you?
>> >>>>
>> >>>> Thanks
>> >>>> Alex Ough
>> >>>>
>> >>>>
>> >>>> On Mon, Feb 10, 2014 at 1:07 PM, Alex Ough <al...@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-4992
>> >>>>>
>> >>>>>
>> >>>>> https://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
>> >>>>
>> >>>>
>> >>>
>> >>>
>> >>>
>> >>> --
>> >>> Daan
>> >>
>> >>
>> >
>>
>>
>>
>> --
>> Daan
>>
>



-- 
Daan

Re: Review Request 17790: Domain-Account-User Sync Up Among Multiple Regions

Posted by Daan Hoogland <da...@gmail.com>.
master, before the 14th. If we get it in in time we will have to make
fixes on both 4.4-forward and master.

On Wed, Mar 5, 2014 at 10:33 PM, Alex Ough <al...@sungard.com> wrote:
> What branch needs to be based to create a review request of this
> implementation that will be included in 4.4 release?
> 4.3 or 4.3-forward?
>
> Thanks
> Alex Ough
>
>
> On Tue, Mar 4, 2014 at 1:25 PM, Alex Ough <al...@sungard.com> wrote:
>>
>> Yes, by 3/7.
>>
>> Thanks
>> Alex Ough
>>
>>
>> On Tue, Mar 4, 2014 at 12:30 PM, Daan Hoogland <da...@gmail.com>
>> wrote:
>>>
>>> This week? should be ok. end of next week is too late!
>>>
>>> On Tue, Mar 4, 2014 at 6:17 PM, Alex Ough <al...@sungard.com> wrote:
>>> > Do you think it is ok to wrap up the implementation until the end of
>>> > this
>>> > week to make this included in 4.4 release?
>>> >
>>> > Thanks
>>> > Alex Ough
>>> >
>>> >
>>> > On Sun, Mar 2, 2014 at 2:10 PM, Daan Hoogland <da...@gmail.com>
>>> > wrote:
>>> >>
>>> >> two weeks from now, but under debate. Let's go with that, though.
>>> >>
>>> >> On Sun, Mar 2, 2014 at 1:17 AM, Alex Ough <al...@sungard.com>
>>> >> wrote:
>>> >> > Can you tell me when the deadline for 4.4 is?
>>> >> >
>>> >> > Thanks
>>> >> > Alex Ough
>>> >> >
>>> >> >
>>> >> > On Sat, Mar 1, 2014 at 2:26 PM, Daan Hoogland
>>> >> > <da...@gmail.com>
>>> >> > wrote:
>>> >> >>
>>> >> >> Ha Alex,
>>> >> >>
>>> >> >> branch 4.3 is going to be a problem. We will be able to release
>>> >> >> this
>>> >> >> with 4.4 if we hurry.
>>> >> >>
>>> >> >> On Fri, Feb 28, 2014 at 4:01 PM, Alex Ough <al...@sungard.com>
>>> >> >> wrote:
>>> >> >> > Hi Daan,
>>> >> >> >
>>> >> >> > 1. Yes, we'll update the request once all the unit tests are
>>> >> >> > completed.
>>> >> >> > 2. And yes, it is a branch from 4.3
>>> >> >> > 3. I'm using the global parameter, called
>>> >> >> > 'region.auto.generation.interval'
>>> >> >> > and the value is 0 (millisec) by default.
>>> >> >> >     If you set the value more than 0, it will automatically
>>> >> >> > create/update/remove domains/accounts/users with that interval,
>>> >> >> >     which will trigger the scheduled full scan to sync the newly
>>> >> >> > changed
>>> >> >> > resources.
>>> >> >> >
>>> >> >> > Let me know if you need more info.
>>> >> >> > Thanks
>>> >> >> > Alex Ough
>>> >> >> >
>>> >> >> >
>>> >> >> > On Thu, Feb 27, 2014 at 3:50 PM, Daan Hoogland
>>> >> >> > <da...@gmail.com>
>>> >> >> > wrote:
>>> >> >> >>
>>> >> >> >> I see, great.
>>> >> >> >>
>>> >> >> >> I will find a moment to apply it and test. It looks good at
>>> >> >> >> first
>>> >> >> >> sight.
>>> >> >> >>
>>> >> >> >> Don't forget adding the license header to the new files. Are you
>>> >> >> >> updating the review request with these tests?
>>> >> >> >>
>>> >> >> >> You are using a local branch to implement this on,
>>> >> >> >> 'alexoughsg/Albatross'  is a fork of cloudstack, is it?
>>> >> >> >> Let's discuss merge back and testing.
>>> >> >> >> Do you have a integration test script in Marvin and/or scenarios
>>> >> >> >> that
>>> >> >> >> will ensure continued functionality for the sync feature?
>>> >> >> >>
>>> >> >> >>
>>> >> >> >> thanks,
>>> >> >> >> Daan
>>> >> >> >>
>>> >> >> >> On Thu, Feb 27, 2014 at 9:19 PM, Alex Ough
>>> >> >> >> <al...@sungard.com>
>>> >> >> >> wrote:
>>> >> >> >> > Hi Daan,
>>> >> >> >> >
>>> >> >> >> > We started to work on implementing unit tests and checked in
>>> >> >> >> > some
>>> >> >> >> > of
>>> >> >> >> > them,
>>> >> >> >> > so please review them and let us know if there is any
>>> >> >> >> > comments/suggestions.
>>> >> >> >> >
>>> >> >> >> >
>>> >> >> >> >
>>> >> >> >> >
>>> >> >> >> >
>>> >> >> >> > https://github.com/alexoughsg/Albatross/commit/fca94db36054ee35f5da85c69c2471430e0eebfe
>>> >> >> >> >
>>> >> >> >> > Thanks
>>> >> >> >> > Alex Ough
>>> >> >> >> >
>>> >> >> >> >
>>> >> >> >> > On Thu, Feb 13, 2014 at 3:15 PM, Alex Ough
>>> >> >> >> > <al...@sungard.com>
>>> >> >> >> > wrote:
>>> >> >> >> >>
>>> >> >> >> >> We're just about to add unit tests, so I'll add them once
>>> >> >> >> >> completed.
>>> >> >> >> >>
>>> >> >> >> >> Thanks
>>> >> >> >> >> Alex Ough
>>> >> >> >> >>
>>> >> >> >> >>
>>> >> >> >> >> On Thu, Feb 13, 2014 at 3:12 PM, Daan Hoogland
>>> >> >> >> >> <da...@gmail.com>
>>> >> >> >> >> wrote:
>>> >> >> >> >>>
>>> >> >> >> >>> h Alex,
>>> >> >> >> >>>
>>> >> >> >> >>>  looks alright (i did mean with newlines but I don't know if
>>> >> >> >> >>> this
>>> >> >> >> >>> is
>>> >> >> >> >>> actually caught by our checkstyle run) I was wondering if
>>> >> >> >> >>> you
>>> >> >> >> >>> have
>>> >> >> >> >>> any
>>> >> >> >> >>> unit
>>> >> >> >> >>> tests for your code. I can see you did take testing
>>> >> >> >> >>> seriously
>>> >> >> >> >>> and I
>>> >> >> >> >>> would
>>> >> >> >> >>> like to see this formalized for future reference and
>>> >> >> >> >>> repetition
>>> >> >> >> >>> on
>>> >> >> >> >>> updates.
>>> >> >> >> >>> Can you add some stuff in this line?
>>> >> >> >> >>>
>>> >> >> >> >>> thanks,
>>> >> >> >> >>> Daan
>>> >> >> >> >>>
>>> >> >> >> >>>
>>> >> >> >> >>> On Thu, Feb 13, 2014 at 9:52 PM, Alex Ough
>>> >> >> >> >>> <al...@sungard.com>
>>> >> >> >> >>> wrote:
>>> >> >> >> >>>>
>>> >> >> >> >>>> Hi Daan,
>>> >> >> >> >>>> Does it look good to you?
>>> >> >> >> >>>>
>>> >> >> >> >>>> Thanks
>>> >> >> >> >>>> Alex Ough
>>> >> >> >> >>>>
>>> >> >> >> >>>>
>>> >> >> >> >>>> On Mon, Feb 10, 2014 at 1:07 PM, Alex Ough
>>> >> >> >> >>>> <al...@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-4992
>>> >> >> >> >>>>>
>>> >> >> >> >>>>>
>>> >> >> >> >>>>>
>>> >> >> >> >>>>>
>>> >> >> >> >>>>>
>>> >> >> >> >>>>> https://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
>>> >> >> >> >>>>
>>> >> >> >> >>>>
>>> >> >> >> >>>
>>> >> >> >> >>>
>>> >> >> >> >>>
>>> >> >> >> >>> --
>>> >> >> >> >>> Daan
>>> >> >> >> >>
>>> >> >> >> >>
>>> >> >> >> >
>>> >> >> >>
>>> >> >> >>
>>> >> >> >>
>>> >> >> >> --
>>> >> >> >> Daan
>>> >> >> >>
>>> >> >> >
>>> >> >>
>>> >> >>
>>> >> >>
>>> >> >> --
>>> >> >> Daan
>>> >> >>
>>> >> >
>>> >>
>>> >>
>>> >>
>>> >> --
>>> >> Daan
>>> >>
>>> >
>>>
>>>
>>>
>>> --
>>> Daan
>>>
>>
>



-- 
Daan

Re: Review Request 17790: Domain-Account-User Sync Up Among Multiple Regions

Posted by Alex Ough <al...@sungard.com>.
What branch needs to be based to create a review request of this
implementation that will be included in 4.4 release?
4.3 or 4.3-forward?

Thanks
Alex Ough


On Tue, Mar 4, 2014 at 1:25 PM, Alex Ough <al...@sungard.com> wrote:

> Yes, by 3/7.
>
> Thanks
> Alex Ough
>
>
> On Tue, Mar 4, 2014 at 12:30 PM, Daan Hoogland <da...@gmail.com>wrote:
>
>> This week? should be ok. end of next week is too late!
>>
>> On Tue, Mar 4, 2014 at 6:17 PM, Alex Ough <al...@sungard.com> wrote:
>> > Do you think it is ok to wrap up the implementation until the end of
>> this
>> > week to make this included in 4.4 release?
>> >
>> > Thanks
>> > Alex Ough
>> >
>> >
>> > On Sun, Mar 2, 2014 at 2:10 PM, Daan Hoogland <da...@gmail.com>
>> > wrote:
>> >>
>> >> two weeks from now, but under debate. Let's go with that, though.
>> >>
>> >> On Sun, Mar 2, 2014 at 1:17 AM, Alex Ough <al...@sungard.com>
>> wrote:
>> >> > Can you tell me when the deadline for 4.4 is?
>> >> >
>> >> > Thanks
>> >> > Alex Ough
>> >> >
>> >> >
>> >> > On Sat, Mar 1, 2014 at 2:26 PM, Daan Hoogland <
>> daan.hoogland@gmail.com>
>> >> > wrote:
>> >> >>
>> >> >> Ha Alex,
>> >> >>
>> >> >> branch 4.3 is going to be a problem. We will be able to release this
>> >> >> with 4.4 if we hurry.
>> >> >>
>> >> >> On Fri, Feb 28, 2014 at 4:01 PM, Alex Ough <al...@sungard.com>
>> >> >> wrote:
>> >> >> > Hi Daan,
>> >> >> >
>> >> >> > 1. Yes, we'll update the request once all the unit tests are
>> >> >> > completed.
>> >> >> > 2. And yes, it is a branch from 4.3
>> >> >> > 3. I'm using the global parameter, called
>> >> >> > 'region.auto.generation.interval'
>> >> >> > and the value is 0 (millisec) by default.
>> >> >> >     If you set the value more than 0, it will automatically
>> >> >> > create/update/remove domains/accounts/users with that interval,
>> >> >> >     which will trigger the scheduled full scan to sync the newly
>> >> >> > changed
>> >> >> > resources.
>> >> >> >
>> >> >> > Let me know if you need more info.
>> >> >> > Thanks
>> >> >> > Alex Ough
>> >> >> >
>> >> >> >
>> >> >> > On Thu, Feb 27, 2014 at 3:50 PM, Daan Hoogland
>> >> >> > <da...@gmail.com>
>> >> >> > wrote:
>> >> >> >>
>> >> >> >> I see, great.
>> >> >> >>
>> >> >> >> I will find a moment to apply it and test. It looks good at first
>> >> >> >> sight.
>> >> >> >>
>> >> >> >> Don't forget adding the license header to the new files. Are you
>> >> >> >> updating the review request with these tests?
>> >> >> >>
>> >> >> >> You are using a local branch to implement this on,
>> >> >> >> 'alexoughsg/Albatross'  is a fork of cloudstack, is it?
>> >> >> >> Let's discuss merge back and testing.
>> >> >> >> Do you have a integration test script in Marvin and/or scenarios
>> >> >> >> that
>> >> >> >> will ensure continued functionality for the sync feature?
>> >> >> >>
>> >> >> >>
>> >> >> >> thanks,
>> >> >> >> Daan
>> >> >> >>
>> >> >> >> On Thu, Feb 27, 2014 at 9:19 PM, Alex Ough <
>> alex.ough@sungard.com>
>> >> >> >> wrote:
>> >> >> >> > Hi Daan,
>> >> >> >> >
>> >> >> >> > We started to work on implementing unit tests and checked in
>> some
>> >> >> >> > of
>> >> >> >> > them,
>> >> >> >> > so please review them and let us know if there is any
>> >> >> >> > comments/suggestions.
>> >> >> >> >
>> >> >> >> >
>> >> >> >> >
>> >> >> >> >
>> >> >> >> >
>> https://github.com/alexoughsg/Albatross/commit/fca94db36054ee35f5da85c69c2471430e0eebfe
>> >> >> >> >
>> >> >> >> > Thanks
>> >> >> >> > Alex Ough
>> >> >> >> >
>> >> >> >> >
>> >> >> >> > On Thu, Feb 13, 2014 at 3:15 PM, Alex Ough <
>> alex.ough@sungard.com>
>> >> >> >> > wrote:
>> >> >> >> >>
>> >> >> >> >> We're just about to add unit tests, so I'll add them once
>> >> >> >> >> completed.
>> >> >> >> >>
>> >> >> >> >> Thanks
>> >> >> >> >> Alex Ough
>> >> >> >> >>
>> >> >> >> >>
>> >> >> >> >> On Thu, Feb 13, 2014 at 3:12 PM, Daan Hoogland
>> >> >> >> >> <da...@gmail.com>
>> >> >> >> >> wrote:
>> >> >> >> >>>
>> >> >> >> >>> h Alex,
>> >> >> >> >>>
>> >> >> >> >>>  looks alright (i did mean with newlines but I don't know if
>> >> >> >> >>> this
>> >> >> >> >>> is
>> >> >> >> >>> actually caught by our checkstyle run) I was wondering if you
>> >> >> >> >>> have
>> >> >> >> >>> any
>> >> >> >> >>> unit
>> >> >> >> >>> tests for your code. I can see you did take testing seriously
>> >> >> >> >>> and I
>> >> >> >> >>> would
>> >> >> >> >>> like to see this formalized for future reference and
>> repetition
>> >> >> >> >>> on
>> >> >> >> >>> updates.
>> >> >> >> >>> Can you add some stuff in this line?
>> >> >> >> >>>
>> >> >> >> >>> thanks,
>> >> >> >> >>> Daan
>> >> >> >> >>>
>> >> >> >> >>>
>> >> >> >> >>> On Thu, Feb 13, 2014 at 9:52 PM, Alex Ough
>> >> >> >> >>> <al...@sungard.com>
>> >> >> >> >>> wrote:
>> >> >> >> >>>>
>> >> >> >> >>>> Hi Daan,
>> >> >> >> >>>> Does it look good to you?
>> >> >> >> >>>>
>> >> >> >> >>>> Thanks
>> >> >> >> >>>> Alex Ough
>> >> >> >> >>>>
>> >> >> >> >>>>
>> >> >> >> >>>> On Mon, Feb 10, 2014 at 1:07 PM, Alex Ough
>> >> >> >> >>>> <al...@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-4992
>> >> >> >> >>>>>
>> >> >> >> >>>>>
>> >> >> >> >>>>>
>> >> >> >> >>>>>
>> >> >> >> >>>>>
>> https://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
>> >> >> >> >>>>
>> >> >> >> >>>>
>> >> >> >> >>>
>> >> >> >> >>>
>> >> >> >> >>>
>> >> >> >> >>> --
>> >> >> >> >>> Daan
>> >> >> >> >>
>> >> >> >> >>
>> >> >> >> >
>> >> >> >>
>> >> >> >>
>> >> >> >>
>> >> >> >> --
>> >> >> >> Daan
>> >> >> >>
>> >> >> >
>> >> >>
>> >> >>
>> >> >>
>> >> >> --
>> >> >> Daan
>> >> >>
>> >> >
>> >>
>> >>
>> >>
>> >> --
>> >> Daan
>> >>
>> >
>>
>>
>>
>> --
>> Daan
>>
>>
>

Re: Review Request 17790: Domain-Account-User Sync Up Among Multiple Regions

Posted by Alex Ough <al...@sungard.com>.
Yes, by 3/7.

Thanks
Alex Ough


On Tue, Mar 4, 2014 at 12:30 PM, Daan Hoogland <da...@gmail.com>wrote:

> This week? should be ok. end of next week is too late!
>
> On Tue, Mar 4, 2014 at 6:17 PM, Alex Ough <al...@sungard.com> wrote:
> > Do you think it is ok to wrap up the implementation until the end of this
> > week to make this included in 4.4 release?
> >
> > Thanks
> > Alex Ough
> >
> >
> > On Sun, Mar 2, 2014 at 2:10 PM, Daan Hoogland <da...@gmail.com>
> > wrote:
> >>
> >> two weeks from now, but under debate. Let's go with that, though.
> >>
> >> On Sun, Mar 2, 2014 at 1:17 AM, Alex Ough <al...@sungard.com>
> wrote:
> >> > Can you tell me when the deadline for 4.4 is?
> >> >
> >> > Thanks
> >> > Alex Ough
> >> >
> >> >
> >> > On Sat, Mar 1, 2014 at 2:26 PM, Daan Hoogland <
> daan.hoogland@gmail.com>
> >> > wrote:
> >> >>
> >> >> Ha Alex,
> >> >>
> >> >> branch 4.3 is going to be a problem. We will be able to release this
> >> >> with 4.4 if we hurry.
> >> >>
> >> >> On Fri, Feb 28, 2014 at 4:01 PM, Alex Ough <al...@sungard.com>
> >> >> wrote:
> >> >> > Hi Daan,
> >> >> >
> >> >> > 1. Yes, we'll update the request once all the unit tests are
> >> >> > completed.
> >> >> > 2. And yes, it is a branch from 4.3
> >> >> > 3. I'm using the global parameter, called
> >> >> > 'region.auto.generation.interval'
> >> >> > and the value is 0 (millisec) by default.
> >> >> >     If you set the value more than 0, it will automatically
> >> >> > create/update/remove domains/accounts/users with that interval,
> >> >> >     which will trigger the scheduled full scan to sync the newly
> >> >> > changed
> >> >> > resources.
> >> >> >
> >> >> > Let me know if you need more info.
> >> >> > Thanks
> >> >> > Alex Ough
> >> >> >
> >> >> >
> >> >> > On Thu, Feb 27, 2014 at 3:50 PM, Daan Hoogland
> >> >> > <da...@gmail.com>
> >> >> > wrote:
> >> >> >>
> >> >> >> I see, great.
> >> >> >>
> >> >> >> I will find a moment to apply it and test. It looks good at first
> >> >> >> sight.
> >> >> >>
> >> >> >> Don't forget adding the license header to the new files. Are you
> >> >> >> updating the review request with these tests?
> >> >> >>
> >> >> >> You are using a local branch to implement this on,
> >> >> >> 'alexoughsg/Albatross'  is a fork of cloudstack, is it?
> >> >> >> Let's discuss merge back and testing.
> >> >> >> Do you have a integration test script in Marvin and/or scenarios
> >> >> >> that
> >> >> >> will ensure continued functionality for the sync feature?
> >> >> >>
> >> >> >>
> >> >> >> thanks,
> >> >> >> Daan
> >> >> >>
> >> >> >> On Thu, Feb 27, 2014 at 9:19 PM, Alex Ough <alex.ough@sungard.com
> >
> >> >> >> wrote:
> >> >> >> > Hi Daan,
> >> >> >> >
> >> >> >> > We started to work on implementing unit tests and checked in
> some
> >> >> >> > of
> >> >> >> > them,
> >> >> >> > so please review them and let us know if there is any
> >> >> >> > comments/suggestions.
> >> >> >> >
> >> >> >> >
> >> >> >> >
> >> >> >> >
> >> >> >> >
> https://github.com/alexoughsg/Albatross/commit/fca94db36054ee35f5da85c69c2471430e0eebfe
> >> >> >> >
> >> >> >> > Thanks
> >> >> >> > Alex Ough
> >> >> >> >
> >> >> >> >
> >> >> >> > On Thu, Feb 13, 2014 at 3:15 PM, Alex Ough <
> alex.ough@sungard.com>
> >> >> >> > wrote:
> >> >> >> >>
> >> >> >> >> We're just about to add unit tests, so I'll add them once
> >> >> >> >> completed.
> >> >> >> >>
> >> >> >> >> Thanks
> >> >> >> >> Alex Ough
> >> >> >> >>
> >> >> >> >>
> >> >> >> >> On Thu, Feb 13, 2014 at 3:12 PM, Daan Hoogland
> >> >> >> >> <da...@gmail.com>
> >> >> >> >> wrote:
> >> >> >> >>>
> >> >> >> >>> h Alex,
> >> >> >> >>>
> >> >> >> >>>  looks alright (i did mean with newlines but I don't know if
> >> >> >> >>> this
> >> >> >> >>> is
> >> >> >> >>> actually caught by our checkstyle run) I was wondering if you
> >> >> >> >>> have
> >> >> >> >>> any
> >> >> >> >>> unit
> >> >> >> >>> tests for your code. I can see you did take testing seriously
> >> >> >> >>> and I
> >> >> >> >>> would
> >> >> >> >>> like to see this formalized for future reference and
> repetition
> >> >> >> >>> on
> >> >> >> >>> updates.
> >> >> >> >>> Can you add some stuff in this line?
> >> >> >> >>>
> >> >> >> >>> thanks,
> >> >> >> >>> Daan
> >> >> >> >>>
> >> >> >> >>>
> >> >> >> >>> On Thu, Feb 13, 2014 at 9:52 PM, Alex Ough
> >> >> >> >>> <al...@sungard.com>
> >> >> >> >>> wrote:
> >> >> >> >>>>
> >> >> >> >>>> Hi Daan,
> >> >> >> >>>> Does it look good to you?
> >> >> >> >>>>
> >> >> >> >>>> Thanks
> >> >> >> >>>> Alex Ough
> >> >> >> >>>>
> >> >> >> >>>>
> >> >> >> >>>> On Mon, Feb 10, 2014 at 1:07 PM, Alex Ough
> >> >> >> >>>> <al...@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-4992
> >> >> >> >>>>>
> >> >> >> >>>>>
> >> >> >> >>>>>
> >> >> >> >>>>>
> >> >> >> >>>>>
> https://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
> >> >> >> >>>>
> >> >> >> >>>>
> >> >> >> >>>
> >> >> >> >>>
> >> >> >> >>>
> >> >> >> >>> --
> >> >> >> >>> Daan
> >> >> >> >>
> >> >> >> >>
> >> >> >> >
> >> >> >>
> >> >> >>
> >> >> >>
> >> >> >> --
> >> >> >> Daan
> >> >> >>
> >> >> >
> >> >>
> >> >>
> >> >>
> >> >> --
> >> >> Daan
> >> >>
> >> >
> >>
> >>
> >>
> >> --
> >> Daan
> >>
> >
>
>
>
> --
> Daan
>
>

Re: Review Request 17790: Domain-Account-User Sync Up Among Multiple Regions

Posted by Daan Hoogland <da...@gmail.com>.
This week? should be ok. end of next week is too late!

On Tue, Mar 4, 2014 at 6:17 PM, Alex Ough <al...@sungard.com> wrote:
> Do you think it is ok to wrap up the implementation until the end of this
> week to make this included in 4.4 release?
>
> Thanks
> Alex Ough
>
>
> On Sun, Mar 2, 2014 at 2:10 PM, Daan Hoogland <da...@gmail.com>
> wrote:
>>
>> two weeks from now, but under debate. Let's go with that, though.
>>
>> On Sun, Mar 2, 2014 at 1:17 AM, Alex Ough <al...@sungard.com> wrote:
>> > Can you tell me when the deadline for 4.4 is?
>> >
>> > Thanks
>> > Alex Ough
>> >
>> >
>> > On Sat, Mar 1, 2014 at 2:26 PM, Daan Hoogland <da...@gmail.com>
>> > wrote:
>> >>
>> >> Ha Alex,
>> >>
>> >> branch 4.3 is going to be a problem. We will be able to release this
>> >> with 4.4 if we hurry.
>> >>
>> >> On Fri, Feb 28, 2014 at 4:01 PM, Alex Ough <al...@sungard.com>
>> >> wrote:
>> >> > Hi Daan,
>> >> >
>> >> > 1. Yes, we'll update the request once all the unit tests are
>> >> > completed.
>> >> > 2. And yes, it is a branch from 4.3
>> >> > 3. I'm using the global parameter, called
>> >> > 'region.auto.generation.interval'
>> >> > and the value is 0 (millisec) by default.
>> >> >     If you set the value more than 0, it will automatically
>> >> > create/update/remove domains/accounts/users with that interval,
>> >> >     which will trigger the scheduled full scan to sync the newly
>> >> > changed
>> >> > resources.
>> >> >
>> >> > Let me know if you need more info.
>> >> > Thanks
>> >> > Alex Ough
>> >> >
>> >> >
>> >> > On Thu, Feb 27, 2014 at 3:50 PM, Daan Hoogland
>> >> > <da...@gmail.com>
>> >> > wrote:
>> >> >>
>> >> >> I see, great.
>> >> >>
>> >> >> I will find a moment to apply it and test. It looks good at first
>> >> >> sight.
>> >> >>
>> >> >> Don't forget adding the license header to the new files. Are you
>> >> >> updating the review request with these tests?
>> >> >>
>> >> >> You are using a local branch to implement this on,
>> >> >> 'alexoughsg/Albatross'  is a fork of cloudstack, is it?
>> >> >> Let's discuss merge back and testing.
>> >> >> Do you have a integration test script in Marvin and/or scenarios
>> >> >> that
>> >> >> will ensure continued functionality for the sync feature?
>> >> >>
>> >> >>
>> >> >> thanks,
>> >> >> Daan
>> >> >>
>> >> >> On Thu, Feb 27, 2014 at 9:19 PM, Alex Ough <al...@sungard.com>
>> >> >> wrote:
>> >> >> > Hi Daan,
>> >> >> >
>> >> >> > We started to work on implementing unit tests and checked in some
>> >> >> > of
>> >> >> > them,
>> >> >> > so please review them and let us know if there is any
>> >> >> > comments/suggestions.
>> >> >> >
>> >> >> >
>> >> >> >
>> >> >> >
>> >> >> > https://github.com/alexoughsg/Albatross/commit/fca94db36054ee35f5da85c69c2471430e0eebfe
>> >> >> >
>> >> >> > Thanks
>> >> >> > Alex Ough
>> >> >> >
>> >> >> >
>> >> >> > On Thu, Feb 13, 2014 at 3:15 PM, Alex Ough <al...@sungard.com>
>> >> >> > wrote:
>> >> >> >>
>> >> >> >> We're just about to add unit tests, so I'll add them once
>> >> >> >> completed.
>> >> >> >>
>> >> >> >> Thanks
>> >> >> >> Alex Ough
>> >> >> >>
>> >> >> >>
>> >> >> >> On Thu, Feb 13, 2014 at 3:12 PM, Daan Hoogland
>> >> >> >> <da...@gmail.com>
>> >> >> >> wrote:
>> >> >> >>>
>> >> >> >>> h Alex,
>> >> >> >>>
>> >> >> >>>  looks alright (i did mean with newlines but I don't know if
>> >> >> >>> this
>> >> >> >>> is
>> >> >> >>> actually caught by our checkstyle run) I was wondering if you
>> >> >> >>> have
>> >> >> >>> any
>> >> >> >>> unit
>> >> >> >>> tests for your code. I can see you did take testing seriously
>> >> >> >>> and I
>> >> >> >>> would
>> >> >> >>> like to see this formalized for future reference and repetition
>> >> >> >>> on
>> >> >> >>> updates.
>> >> >> >>> Can you add some stuff in this line?
>> >> >> >>>
>> >> >> >>> thanks,
>> >> >> >>> Daan
>> >> >> >>>
>> >> >> >>>
>> >> >> >>> On Thu, Feb 13, 2014 at 9:52 PM, Alex Ough
>> >> >> >>> <al...@sungard.com>
>> >> >> >>> wrote:
>> >> >> >>>>
>> >> >> >>>> Hi Daan,
>> >> >> >>>> Does it look good to you?
>> >> >> >>>>
>> >> >> >>>> Thanks
>> >> >> >>>> Alex Ough
>> >> >> >>>>
>> >> >> >>>>
>> >> >> >>>> On Mon, Feb 10, 2014 at 1:07 PM, Alex Ough
>> >> >> >>>> <al...@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-4992
>> >> >> >>>>>
>> >> >> >>>>>
>> >> >> >>>>>
>> >> >> >>>>>
>> >> >> >>>>> https://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
>> >> >> >>>>
>> >> >> >>>>
>> >> >> >>>
>> >> >> >>>
>> >> >> >>>
>> >> >> >>> --
>> >> >> >>> Daan
>> >> >> >>
>> >> >> >>
>> >> >> >
>> >> >>
>> >> >>
>> >> >>
>> >> >> --
>> >> >> Daan
>> >> >>
>> >> >
>> >>
>> >>
>> >>
>> >> --
>> >> Daan
>> >>
>> >
>>
>>
>>
>> --
>> Daan
>>
>



-- 
Daan

Re: Review Request 17790: Domain-Account-User Sync Up Among Multiple Regions

Posted by Alex Ough <al...@sungard.com>.
Do you think it is ok to wrap up the implementation until the end of this
week to make this included in 4.4 release?

Thanks
Alex Ough


On Sun, Mar 2, 2014 at 2:10 PM, Daan Hoogland <da...@gmail.com>wrote:

> two weeks from now, but under debate. Let's go with that, though.
>
> On Sun, Mar 2, 2014 at 1:17 AM, Alex Ough <al...@sungard.com> wrote:
> > Can you tell me when the deadline for 4.4 is?
> >
> > Thanks
> > Alex Ough
> >
> >
> > On Sat, Mar 1, 2014 at 2:26 PM, Daan Hoogland <da...@gmail.com>
> > wrote:
> >>
> >> Ha Alex,
> >>
> >> branch 4.3 is going to be a problem. We will be able to release this
> >> with 4.4 if we hurry.
> >>
> >> On Fri, Feb 28, 2014 at 4:01 PM, Alex Ough <al...@sungard.com>
> wrote:
> >> > Hi Daan,
> >> >
> >> > 1. Yes, we'll update the request once all the unit tests are
> completed.
> >> > 2. And yes, it is a branch from 4.3
> >> > 3. I'm using the global parameter, called
> >> > 'region.auto.generation.interval'
> >> > and the value is 0 (millisec) by default.
> >> >     If you set the value more than 0, it will automatically
> >> > create/update/remove domains/accounts/users with that interval,
> >> >     which will trigger the scheduled full scan to sync the newly
> changed
> >> > resources.
> >> >
> >> > Let me know if you need more info.
> >> > Thanks
> >> > Alex Ough
> >> >
> >> >
> >> > On Thu, Feb 27, 2014 at 3:50 PM, Daan Hoogland <
> daan.hoogland@gmail.com>
> >> > wrote:
> >> >>
> >> >> I see, great.
> >> >>
> >> >> I will find a moment to apply it and test. It looks good at first
> >> >> sight.
> >> >>
> >> >> Don't forget adding the license header to the new files. Are you
> >> >> updating the review request with these tests?
> >> >>
> >> >> You are using a local branch to implement this on,
> >> >> 'alexoughsg/Albatross'  is a fork of cloudstack, is it?
> >> >> Let's discuss merge back and testing.
> >> >> Do you have a integration test script in Marvin and/or scenarios that
> >> >> will ensure continued functionality for the sync feature?
> >> >>
> >> >>
> >> >> thanks,
> >> >> Daan
> >> >>
> >> >> On Thu, Feb 27, 2014 at 9:19 PM, Alex Ough <al...@sungard.com>
> >> >> wrote:
> >> >> > Hi Daan,
> >> >> >
> >> >> > We started to work on implementing unit tests and checked in some
> of
> >> >> > them,
> >> >> > so please review them and let us know if there is any
> >> >> > comments/suggestions.
> >> >> >
> >> >> >
> >> >> >
> >> >> >
> https://github.com/alexoughsg/Albatross/commit/fca94db36054ee35f5da85c69c2471430e0eebfe
> >> >> >
> >> >> > Thanks
> >> >> > Alex Ough
> >> >> >
> >> >> >
> >> >> > On Thu, Feb 13, 2014 at 3:15 PM, Alex Ough <al...@sungard.com>
> >> >> > wrote:
> >> >> >>
> >> >> >> We're just about to add unit tests, so I'll add them once
> completed.
> >> >> >>
> >> >> >> Thanks
> >> >> >> Alex Ough
> >> >> >>
> >> >> >>
> >> >> >> On Thu, Feb 13, 2014 at 3:12 PM, Daan Hoogland
> >> >> >> <da...@gmail.com>
> >> >> >> wrote:
> >> >> >>>
> >> >> >>> h Alex,
> >> >> >>>
> >> >> >>>  looks alright (i did mean with newlines but I don't know if this
> >> >> >>> is
> >> >> >>> actually caught by our checkstyle run) I was wondering if you
> have
> >> >> >>> any
> >> >> >>> unit
> >> >> >>> tests for your code. I can see you did take testing seriously
> and I
> >> >> >>> would
> >> >> >>> like to see this formalized for future reference and repetition
> on
> >> >> >>> updates.
> >> >> >>> Can you add some stuff in this line?
> >> >> >>>
> >> >> >>> thanks,
> >> >> >>> Daan
> >> >> >>>
> >> >> >>>
> >> >> >>> On Thu, Feb 13, 2014 at 9:52 PM, Alex Ough <
> alex.ough@sungard.com>
> >> >> >>> wrote:
> >> >> >>>>
> >> >> >>>> Hi Daan,
> >> >> >>>> Does it look good to you?
> >> >> >>>>
> >> >> >>>> Thanks
> >> >> >>>> Alex Ough
> >> >> >>>>
> >> >> >>>>
> >> >> >>>> On Mon, Feb 10, 2014 at 1:07 PM, Alex Ough <
> alex.ough@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-4992
> >> >> >>>>>
> >> >> >>>>>
> >> >> >>>>>
> >> >> >>>>>
> https://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
> >> >> >>>>
> >> >> >>>>
> >> >> >>>
> >> >> >>>
> >> >> >>>
> >> >> >>> --
> >> >> >>> Daan
> >> >> >>
> >> >> >>
> >> >> >
> >> >>
> >> >>
> >> >>
> >> >> --
> >> >> Daan
> >> >>
> >> >
> >>
> >>
> >>
> >> --
> >> Daan
> >>
> >
>
>
>
> --
> Daan
>
>

Re: Review Request 17790: Domain-Account-User Sync Up Among Multiple Regions

Posted by Daan Hoogland <da...@gmail.com>.
two weeks from now, but under debate. Let's go with that, though.

On Sun, Mar 2, 2014 at 1:17 AM, Alex Ough <al...@sungard.com> wrote:
> Can you tell me when the deadline for 4.4 is?
>
> Thanks
> Alex Ough
>
>
> On Sat, Mar 1, 2014 at 2:26 PM, Daan Hoogland <da...@gmail.com>
> wrote:
>>
>> Ha Alex,
>>
>> branch 4.3 is going to be a problem. We will be able to release this
>> with 4.4 if we hurry.
>>
>> On Fri, Feb 28, 2014 at 4:01 PM, Alex Ough <al...@sungard.com> wrote:
>> > Hi Daan,
>> >
>> > 1. Yes, we'll update the request once all the unit tests are completed.
>> > 2. And yes, it is a branch from 4.3
>> > 3. I'm using the global parameter, called
>> > 'region.auto.generation.interval'
>> > and the value is 0 (millisec) by default.
>> >     If you set the value more than 0, it will automatically
>> > create/update/remove domains/accounts/users with that interval,
>> >     which will trigger the scheduled full scan to sync the newly changed
>> > resources.
>> >
>> > Let me know if you need more info.
>> > Thanks
>> > Alex Ough
>> >
>> >
>> > On Thu, Feb 27, 2014 at 3:50 PM, Daan Hoogland <da...@gmail.com>
>> > wrote:
>> >>
>> >> I see, great.
>> >>
>> >> I will find a moment to apply it and test. It looks good at first
>> >> sight.
>> >>
>> >> Don't forget adding the license header to the new files. Are you
>> >> updating the review request with these tests?
>> >>
>> >> You are using a local branch to implement this on,
>> >> 'alexoughsg/Albatross'  is a fork of cloudstack, is it?
>> >> Let's discuss merge back and testing.
>> >> Do you have a integration test script in Marvin and/or scenarios that
>> >> will ensure continued functionality for the sync feature?
>> >>
>> >>
>> >> thanks,
>> >> Daan
>> >>
>> >> On Thu, Feb 27, 2014 at 9:19 PM, Alex Ough <al...@sungard.com>
>> >> wrote:
>> >> > Hi Daan,
>> >> >
>> >> > We started to work on implementing unit tests and checked in some of
>> >> > them,
>> >> > so please review them and let us know if there is any
>> >> > comments/suggestions.
>> >> >
>> >> >
>> >> >
>> >> > https://github.com/alexoughsg/Albatross/commit/fca94db36054ee35f5da85c69c2471430e0eebfe
>> >> >
>> >> > Thanks
>> >> > Alex Ough
>> >> >
>> >> >
>> >> > On Thu, Feb 13, 2014 at 3:15 PM, Alex Ough <al...@sungard.com>
>> >> > wrote:
>> >> >>
>> >> >> We're just about to add unit tests, so I'll add them once completed.
>> >> >>
>> >> >> Thanks
>> >> >> Alex Ough
>> >> >>
>> >> >>
>> >> >> On Thu, Feb 13, 2014 at 3:12 PM, Daan Hoogland
>> >> >> <da...@gmail.com>
>> >> >> wrote:
>> >> >>>
>> >> >>> h Alex,
>> >> >>>
>> >> >>>  looks alright (i did mean with newlines but I don't know if this
>> >> >>> is
>> >> >>> actually caught by our checkstyle run) I was wondering if you have
>> >> >>> any
>> >> >>> unit
>> >> >>> tests for your code. I can see you did take testing seriously and I
>> >> >>> would
>> >> >>> like to see this formalized for future reference and repetition on
>> >> >>> updates.
>> >> >>> Can you add some stuff in this line?
>> >> >>>
>> >> >>> thanks,
>> >> >>> Daan
>> >> >>>
>> >> >>>
>> >> >>> On Thu, Feb 13, 2014 at 9:52 PM, Alex Ough <al...@sungard.com>
>> >> >>> wrote:
>> >> >>>>
>> >> >>>> Hi Daan,
>> >> >>>> Does it look good to you?
>> >> >>>>
>> >> >>>> Thanks
>> >> >>>> Alex Ough
>> >> >>>>
>> >> >>>>
>> >> >>>> On Mon, Feb 10, 2014 at 1:07 PM, Alex Ough <al...@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-4992
>> >> >>>>>
>> >> >>>>>
>> >> >>>>>
>> >> >>>>> https://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
>> >> >>>>
>> >> >>>>
>> >> >>>
>> >> >>>
>> >> >>>
>> >> >>> --
>> >> >>> Daan
>> >> >>
>> >> >>
>> >> >
>> >>
>> >>
>> >>
>> >> --
>> >> Daan
>> >>
>> >
>>
>>
>>
>> --
>> Daan
>>
>



-- 
Daan

Re: Review Request 17790: Domain-Account-User Sync Up Among Multiple Regions

Posted by Alex Ough <al...@sungard.com>.
Can you tell me when the deadline for 4.4 is?

Thanks
Alex Ough


On Sat, Mar 1, 2014 at 2:26 PM, Daan Hoogland <da...@gmail.com>wrote:

> Ha Alex,
>
> branch 4.3 is going to be a problem. We will be able to release this
> with 4.4 if we hurry.
>
> On Fri, Feb 28, 2014 at 4:01 PM, Alex Ough <al...@sungard.com> wrote:
> > Hi Daan,
> >
> > 1. Yes, we'll update the request once all the unit tests are completed.
> > 2. And yes, it is a branch from 4.3
> > 3. I'm using the global parameter, called
> 'region.auto.generation.interval'
> > and the value is 0 (millisec) by default.
> >     If you set the value more than 0, it will automatically
> > create/update/remove domains/accounts/users with that interval,
> >     which will trigger the scheduled full scan to sync the newly changed
> > resources.
> >
> > Let me know if you need more info.
> > Thanks
> > Alex Ough
> >
> >
> > On Thu, Feb 27, 2014 at 3:50 PM, Daan Hoogland <da...@gmail.com>
> > wrote:
> >>
> >> I see, great.
> >>
> >> I will find a moment to apply it and test. It looks good at first sight.
> >>
> >> Don't forget adding the license header to the new files. Are you
> >> updating the review request with these tests?
> >>
> >> You are using a local branch to implement this on,
> >> 'alexoughsg/Albatross'  is a fork of cloudstack, is it?
> >> Let's discuss merge back and testing.
> >> Do you have a integration test script in Marvin and/or scenarios that
> >> will ensure continued functionality for the sync feature?
> >>
> >>
> >> thanks,
> >> Daan
> >>
> >> On Thu, Feb 27, 2014 at 9:19 PM, Alex Ough <al...@sungard.com>
> wrote:
> >> > Hi Daan,
> >> >
> >> > We started to work on implementing unit tests and checked in some of
> >> > them,
> >> > so please review them and let us know if there is any
> >> > comments/suggestions.
> >> >
> >> >
> >> >
> https://github.com/alexoughsg/Albatross/commit/fca94db36054ee35f5da85c69c2471430e0eebfe
> >> >
> >> > Thanks
> >> > Alex Ough
> >> >
> >> >
> >> > On Thu, Feb 13, 2014 at 3:15 PM, Alex Ough <al...@sungard.com>
> >> > wrote:
> >> >>
> >> >> We're just about to add unit tests, so I'll add them once completed.
> >> >>
> >> >> Thanks
> >> >> Alex Ough
> >> >>
> >> >>
> >> >> On Thu, Feb 13, 2014 at 3:12 PM, Daan Hoogland
> >> >> <da...@gmail.com>
> >> >> wrote:
> >> >>>
> >> >>> h Alex,
> >> >>>
> >> >>>  looks alright (i did mean with newlines but I don't know if this is
> >> >>> actually caught by our checkstyle run) I was wondering if you have
> any
> >> >>> unit
> >> >>> tests for your code. I can see you did take testing seriously and I
> >> >>> would
> >> >>> like to see this formalized for future reference and repetition on
> >> >>> updates.
> >> >>> Can you add some stuff in this line?
> >> >>>
> >> >>> thanks,
> >> >>> Daan
> >> >>>
> >> >>>
> >> >>> On Thu, Feb 13, 2014 at 9:52 PM, Alex Ough <al...@sungard.com>
> >> >>> wrote:
> >> >>>>
> >> >>>> Hi Daan,
> >> >>>> Does it look good to you?
> >> >>>>
> >> >>>> Thanks
> >> >>>> Alex Ough
> >> >>>>
> >> >>>>
> >> >>>> On Mon, Feb 10, 2014 at 1:07 PM, Alex Ough <al...@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-4992
> >> >>>>>
> >> >>>>>
> >> >>>>>
> https://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
> >> >>>>
> >> >>>>
> >> >>>
> >> >>>
> >> >>>
> >> >>> --
> >> >>> Daan
> >> >>
> >> >>
> >> >
> >>
> >>
> >>
> >> --
> >> Daan
> >>
> >
>
>
>
> --
> Daan
>
>