[
https://issues.apache.org/jira/browse/CLOUDSTACK-2378?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Murali Reddy resolved CLOUDSTACK-2378.
--------------------------------------
Resolution: Fixed
> [GSLB] assignToGSLBRule or removeFromGlobalLoadBalancerRule APIs are failing
> when there are multiple physical network in a zone
> -------------------------------------------------------------------------------------------------------------------------------
>
> Key: CLOUDSTACK-2378
> URL: https://issues.apache.org/jira/browse/CLOUDSTACK-2378
> Project: CloudStack
> Issue Type: Bug
> Security Level: Public(Anyone can view this level - this is the
> default.)
> Components: Network Controller
> Affects Versions: 4.2.0
> Environment: commit # 09af15035b9febe6f55e73a1389f950ab042564f
> Reporter: venkata swamybabu budumuru
> Assignee: Murali Reddy
> Priority: Critical
> Fix For: 4.2.0
>
> Attachments: logs.tgz
>
>
> Steps to reproduce :
> 1. Have CloudStack with at least one zone with multiple physical networks
> 2. Have GSLB device configured in each physical network of the zone
> 3. create GSLB rule
> 4. Try to assign at least one LB rule from any of the above physical networks
> Observations :
> (i) It fails with the following error
> 2013-05-08 08:14:59,990 DEBUG [cloud.async.AsyncJobManagerImpl]
> (Job-Executor-79:job-238) Schedule queued job-238
> 2013-05-08 08:14:59,997 DEBUG [cloud.async.SyncQueueManagerImpl]
> (Job-Executor-79:job-238) There is a pending process in sync queue(id: 67)
> 2013-05-08 08:15:00,000 DEBUG [cloud.async.AsyncJobManagerImpl]
> (Job-Executor-80:job-238) Executing
> org.apache.cloudstack.api.command.user.region.ha.gslb.AssignToGlobalLoadBalancerRuleCmd
> for job-238
> 2013-05-08 08:15:00,023 DEBUG [cloud.user.AccountManagerImpl]
> (Job-Executor-80:job-238) Access to
> org.apache.cloudstack.region.gslb.GlobalLoadBalancerRuleVO$$EnhancerByCGLIB$$75a5db02@5b35b0ae
> granted to Acct[5-dom1Acc3] by DomainChecker_EnhancerByCloudStack_31a4ebb4
> 2013-05-08 08:15:00,030 DEBUG [cloud.user.AccountManagerImpl]
> (Job-Executor-80:job-238) Access to Rule[7-LoadBalancing-Active] granted to
> Acct[5-dom1Acc3] by DomainChecker_EnhancerByCloudStack_31a4ebb4
> 2013-05-08 08:15:00,039 ERROR [cloud.async.AsyncJobManagerImpl]
> (Job-Executor-80:job-238) Unexpected exception while executing
> org.apache.cloudstack.api.command.user.region.ha.gslb.AssignToGlobalLoadBalancerRuleCmd
> com.cloud.exception.InvalidParameterValueException: Unable to get physical
> network in zone id = 1
> at
> com.cloud.network.element.NetscalerElement.findGslbProvider(NetscalerElement.java:861)
> at
> com.cloud.network.element.NetscalerElement.isServiceEnabledInZone(NetscalerElement.java:872)
> at
> org.apache.cloudstack.region.gslb.GlobalLoadBalancingRulesServiceImpl.checkGslbServiceEnabledInZone(GlobalLoadBalancingRulesServiceImpl.java:608)
> at
> org.apache.cloudstack.region.gslb.GlobalLoadBalancingRulesServiceImpl.assignToGlobalLoadBalancerRule(GlobalLoadBalancingRulesServiceImpl.java:224)
> at
> org.apache.cloudstack.api.command.user.region.ha.gslb.AssignToGlobalLoadBalancerRuleCmd.execute(AssignToGlobalLoadBalancerRuleCmd.java:106)
> at com.cloud.api.ApiDispatcher.dispatch(ApiDispatcher.java:155)
> at
> com.cloud.async.AsyncJobManagerImpl$1.run(AsyncJobManagerImpl.java:437)
> at
> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
> at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
> at java.util.concurrent.FutureTask.run(FutureTask.java:166)
> at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1146)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
> at java.lang.Thread.run(Thread.java:679)
> 2013-05-08 08:15:00,041 DEBUG [cloud.async.AsyncJobManagerImpl]
> (Job-Executor-80:job-238) Complete async job-238, jobStatus: 2, resultCode:
> 530, result: Error Code: 530 Error text: Unable to get physical network in
> zone id = 1
> 2013-05-08 08:15:00,058 DEBUG [cloud.async.SyncQueueManagerImpl]
> (Job-Executor-80:job-238) Sync queue (67) is currently empty
> (ii) if we are going to support multiple physical networks with GSLB enabled
> then we need to change our code to allow the above otherwise we should
> restrict adding GSLB provider in more than one physical network of the same
> zone.
> Attaching all the required logs along with the db dump.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira