Hi,

Kasun and me looked in to the issue.
The issue has surfaced due to Erandas commit to,
SynchronizeRepositoryRequest#execute() method - setting tenant info to CC.
However, it is the correct approach IMHO.
In the current implementation the cluster message listener always passes
mainConfigContext to the execute() method. Hence during the doDeployment()
method call, the super-tenant CarbonAxisConfigurator get picked instead of
TenantAxisConfigurator.

thought of handling the multi-tenant aspects after message being passed to
the receiving side. (after the execute method)

Therefor modified the doDeployment method as follows,

 if (!MultitenantConstants.SUPER_TENANT_DOMAIN_NAME.equals(tenantDomain)) {
            // If the depsync request is for tenant repository..
            configContext =
TenantAxisUtils.getTenantConfigurationContext(tenantDomain, configContext);
        }
        AxisConfigurator axisConfigurator =
configContext.getAxisConfiguration().getConfigurator();
        if (axisConfigurator instanceof CarbonAxisConfigurator) {
            ((CarbonAxisConfigurator) axisConfigurator).runDeployment();
        } else if (axisConfigurator instanceof TenantAxisConfigurator) {
            ((TenantAxisConfigurator) axisConfigurator).runDeployment();
        }


The functionality is working fine for me in my local setup. Please let me
know if you find any issues with the above approach..

thanks,
--Pradeep



On Tue, Aug 13, 2013 at 5:25 PM, Pradeep Fernando <[email protected]> wrote:

> i will have a look..
>
>
> On Tue, Aug 13, 2013 at 3:57 PM, Kasun Gajasinghe <[email protected]> wrote:
>
>> The second issue seems to be because of a local issue when configuring
>> the wka clustering. I'm trying to re-produce the first issue.
>>
>> Thanks,
>> KasunG
>>
>>
>> On Tue, Aug 13, 2013 at 3:33 PM, Kasun Gajasinghe <[email protected]>wrote:
>>
>>> Hi,
>>>
>>> Tenant Deployment Synchronizing is broken in latest packs. This issue is
>>> of two fold.
>>>
>>> 1. Tenants fail to update their svn repository when a cluster message is
>>> received. [1] The actual issue is that although the cluster message,
>>> SynchronizeRepositoryRequest, has the correct tenant id, the
>>> ConfigurationContext object passed by worker node is the CC of super
>>> tenant. The cluster message receiver node is supposed to pass the correct
>>> ConfigurationContext to SynchronizeRepositoryRequest#execute method. It
>>> seems like the HazelcastClusteringAgent is not tenant aware.
>>>
>>> 2. Manager nodes fails to send cluster message  -  The reason is
>>> that ClusteringAgent that is used to send the cluster message is null.
>>> Noticed this in local setup even for super-tenant. Seems to be intermittent
>>> since this is apparently working in the 9thAug QA setup.
>>>
>>> CarbonDeploymentSchedulerTask#sendRepositorySyncMessage
>>> CarbonCoreDataHolder.getInstance().getMainServerConfigContext().
>>>                         getAxisConfiguration().getClusteringAgent(); ==>
>>> null
>>>
>>>
>>> https://wso2.org/jira/browse/CARBON-14346
>>>
>>> Thanks,
>>> KasunG
>>>
>>> --
>>> *Kasun Gajasinghe*
>>> Software Engineer;
>>> Development Technologies Team, WSO2 Inc.; http://wso2.com
>>>
>>>
>>>
>>>
>>>  ,
>>> *email: **kasung AT spamfree wso2.com
>>>
>>>
>>>
>>>
>>> ** cell: **+94 (77) 678-0813*
>>> *linked-in: *http://lk.linkedin.com/in/gajasinghe
>>>
>>>
>>>
>>>
>>> *
>>> *
>>> *blog: **http://kasunbg.org* <http://kasunbg.org>
>>>
>>>
>>>
>>>
>>> *
>>> twitter: **http://twitter.com/kasunbg* <http://twitter.com/kasunbg>
>>>
>>>
>>>
>>>
>>> *
>>> *
>>>
>>
>>
>>
>> --
>> *Kasun Gajasinghe*
>> Software Engineer;
>> Development Technologies Team, WSO2 Inc.; http://wso2.com
>>
>>
>>  ,
>> *email: **kasung AT spamfree wso2.com
>>
>>
>> ** cell: **+94 (77) 678-0813*
>> *linked-in: *http://lk.linkedin.com/in/gajasinghe
>>
>>
>> *
>> *
>> *blog: **http://kasunbg.org* <http://kasunbg.org>
>>
>>
>> *
>> twitter: **http://twitter.com/kasunbg* <http://twitter.com/kasunbg>
>>
>>
>> *
>> *
>>
>
>
>
> --
> *Pradeep Fernando*
> Associate Technical Lead;WSO2 Inc.; http://wso2.com
>
> blog: http://pradeepfernando.blogspot.com
> m: +94776603662
>



-- 
*Pradeep Fernando*
Associate Technical Lead;WSO2 Inc.; http://wso2.com

blog: http://pradeepfernando.blogspot.com
m: +94776603662
_______________________________________________
Dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/dev

Reply via email to