Updated Branches: refs/heads/master 4d634980e -> a62104886
CLOUDSTACK-1307 Noticed NPE when we put host in maintenance mode in clustered management setup Changes: - Use of class variable of type GenericSearchBuilder causes issues when multiple threads invoke this method to findCapacity - Changing the scope of the variable to be local to these methods. Project: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/commit/a6210488 Tree: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/tree/a6210488 Diff: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/diff/a6210488 Branch: refs/heads/master Commit: a621048869fcfaf73e8a0cab75e83e86b7e5e589 Parents: 4d63498 Author: Prachi Damle <[email protected]> Authored: Fri Feb 15 20:37:18 2013 -0800 Committer: Prachi Damle <[email protected]> Committed: Fri Feb 15 20:38:19 2013 -0800 ---------------------------------------------------------------------- .../com/cloud/capacity/dao/CapacityDaoImpl.java | 7 +++---- 1 files changed, 3 insertions(+), 4 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/a6210488/server/src/com/cloud/capacity/dao/CapacityDaoImpl.java ---------------------------------------------------------------------- diff --git a/server/src/com/cloud/capacity/dao/CapacityDaoImpl.java b/server/src/com/cloud/capacity/dao/CapacityDaoImpl.java index baaf391..c33bfaf 100755 --- a/server/src/com/cloud/capacity/dao/CapacityDaoImpl.java +++ b/server/src/com/cloud/capacity/dao/CapacityDaoImpl.java @@ -62,7 +62,6 @@ public class CapacityDaoImpl extends GenericDaoBase<CapacityVO, Long> implements private final SearchBuilder<CapacityVO> _hostIdTypeSearch; private final SearchBuilder<CapacityVO> _hostOrPoolIdSearch; - protected GenericSearchBuilder<CapacityVO, SummedCapacity> SummedCapacitySearch; private final SearchBuilder<CapacityVO> _allFieldsSearch; @Inject protected StoragePoolDao _storagePoolDao; @@ -309,7 +308,7 @@ public class CapacityDaoImpl extends GenericDaoBase<CapacityVO, Long> implements @Override public List<SummedCapacity> findCapacityBy(Integer capacityType, Long zoneId, Long podId, Long clusterId){ - SummedCapacitySearch = createSearchBuilder(SummedCapacity.class); + GenericSearchBuilder<CapacityVO, SummedCapacity> SummedCapacitySearch = createSearchBuilder(SummedCapacity.class); SummedCapacitySearch.select("dcId", Func.NATIVE, SummedCapacitySearch.entity().getDataCenterId()); SummedCapacitySearch.select("sumUsed", Func.SUM, SummedCapacitySearch.entity().getUsedCapacity()); SummedCapacitySearch.select("sumReserved", Func.SUM, SummedCapacitySearch.entity().getReservedCapacity()); @@ -528,7 +527,7 @@ public class CapacityDaoImpl extends GenericDaoBase<CapacityVO, Long> implements @Override public List<SummedCapacity> findByClusterPodZone(Long zoneId, Long podId, Long clusterId){ - SummedCapacitySearch = createSearchBuilder(SummedCapacity.class); + GenericSearchBuilder<CapacityVO, SummedCapacity> SummedCapacitySearch = createSearchBuilder(SummedCapacity.class); SummedCapacitySearch.select("sumUsed", Func.SUM, SummedCapacitySearch.entity().getUsedCapacity()); SummedCapacitySearch.select("sumTotal", Func.SUM, SummedCapacitySearch.entity().getTotalCapacity()); SummedCapacitySearch.select("capacityType", Func.NATIVE, SummedCapacitySearch.entity().getCapacityType()); @@ -563,7 +562,7 @@ public class CapacityDaoImpl extends GenericDaoBase<CapacityVO, Long> implements @Override public List<SummedCapacity> findNonSharedStorageForClusterPodZone(Long zoneId, Long podId, Long clusterId){ - SummedCapacitySearch = createSearchBuilder(SummedCapacity.class); + GenericSearchBuilder<CapacityVO, SummedCapacity> SummedCapacitySearch = createSearchBuilder(SummedCapacity.class); SummedCapacitySearch.select("sumUsed", Func.SUM, SummedCapacitySearch.entity().getUsedCapacity()); SummedCapacitySearch.select("sumTotal", Func.SUM, SummedCapacitySearch.entity().getTotalCapacity()); SummedCapacitySearch.select("capacityType", Func.NATIVE, SummedCapacitySearch.entity().getCapacityType());
