From 5437a0d0587f6e8492da66587c1ae165015f0d39 Mon Sep 17 00:00:00 2001 From: Alena Prokharchyk Date: Thu, 27 Jun 2013 17:09:13 -0700 Subject: [PATCH] CLOUDSTACK-3126: don't count system network (private gateway's network) when calculate networks count in the vpc --- engine/schema/src/com/cloud/network/dao/NetworkDaoImpl.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/engine/schema/src/com/cloud/network/dao/NetworkDaoImpl.java b/engine/schema/src/com/cloud/network/dao/NetworkDaoImpl.java index c55cf28273a..0f83815a986 100644 --- a/engine/schema/src/com/cloud/network/dao/NetworkDaoImpl.java +++ b/engine/schema/src/com/cloud/network/dao/NetworkDaoImpl.java @@ -208,6 +208,9 @@ public class NetworkDaoImpl extends GenericDaoBase implements N VpcNetworksCount = createSearchBuilder(Long.class); VpcNetworksCount.and("vpcId", VpcNetworksCount.entity().getVpcId(), Op.EQ); VpcNetworksCount.select(null, Func.COUNT, VpcNetworksCount.entity().getId()); + SearchBuilder join9 = _ntwkOffDao.createSearchBuilder(); + join9.and("isSystem", join9.entity().isSystemOnly(), Op.EQ); + VpcNetworksCount.join("offerings", join9, VpcNetworksCount.entity().getNetworkOfferingId(), join9.entity().getId(), JoinBuilder.JoinType.INNER); VpcNetworksCount.done(); OfferingAccountNetworkSearch = createSearchBuilder(); @@ -587,6 +590,8 @@ public class NetworkDaoImpl extends GenericDaoBase implements N public long countVpcNetworks(long vpcId) { SearchCriteria sc = VpcNetworksCount.create(); sc.setParameters("vpcId", vpcId); + //offering shouldn't be system (the one used by the private gateway) + sc.setJoinParameters("offerings", "isSystem", false); return customSearch(sc, null).get(0); }