From cb6ff00ef6f4e625a93d8e7ec4a1c2cf5895232a Mon Sep 17 00:00:00 2001 From: Murali Reddy Date: Mon, 5 Aug 2013 19:31:29 +0530 Subject: [PATCH] CLOUDSTACK-4048:[GSLB] Failed to assign more than one LB rule to a GSLB rule that is created with gslbmethod=leastconn Netscaler nitro api to add gslb virtual servers fails for some reason if both netmask and round robin methods are specified. So working around with settign netmask to be null while updating vserver. --- .../src/com/cloud/network/resource/NetscalerResource.java | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/plugins/network-elements/netscaler/src/com/cloud/network/resource/NetscalerResource.java b/plugins/network-elements/netscaler/src/com/cloud/network/resource/NetscalerResource.java index c82fde2cde9..e42a9eac2b5 100644 --- a/plugins/network-elements/netscaler/src/com/cloud/network/resource/NetscalerResource.java +++ b/plugins/network-elements/netscaler/src/com/cloud/network/resource/NetscalerResource.java @@ -1134,10 +1134,9 @@ public class NetscalerResource implements ServerResource { vserver.set_cookietimeout(null); vserver.set_domainname(null); if (isUpdateSite) { - if ("roundrobin".equalsIgnoreCase(lbMethod)) { - vserver.set_netmask(null); - vserver.set_v6netmasklen(null); - } + // both netmask and LB method can not be specified while update so set to null + vserver.set_netmask(null); + vserver.set_v6netmasklen(null); gslbvserver.update(client, vserver); } else { gslbvserver.add(client, vserver);