Hi, On Thu, Oct 2, 2014 at 11:14 AM, <d...@apache.org> wrote: > > > http://git-wip-us.apache.org/repos/asf/cloudstack/blob/08b9a96b/server/src/com/cloud/server/ManagementServerImpl.java > ---------------------------------------------------------------------- > diff --git a/server/src/com/cloud/server/ManagementServerImpl.java > b/server/src/com/cloud/server/ManagementServerImpl.java > index da72711..0711fed 100755 > --- a/server/src/com/cloud/server/ManagementServerImpl.java > +++ b/server/src/com/cloud/server/ManagementServerImpl.java > @@ -1703,9 +1703,11 @@ public class ManagementServerImpl extends > ManagerBase implements ManagementServe > List<ConfigurationVO> configVOList = new > ArrayList<ConfigurationVO>(); > for (ConfigurationVO param : result.first()) { > ConfigurationVO configVo = > _configDao.findByName(param.getName()); > - > configVo.setValue(_configDepot.get(param.getName()).valueIn(id).toString()); > - configVOList.add(configVo); > - } > + if (configVo != null) { > + > configVo.setValue(_configDepot.get(param.getName()).valueIn(id).toString()); > + configVOList.add(configVo); > + } > + } >
This null check sort of masks the issue that Mgmt server was expecting some configuration which does not exist anymore and in this fix we're simply ignore when this happens. Should we at least log a warning that a config was not found anymore? While it's right for most cases but when someone is upgrading from one version of CloudStack to another, we deliberately ignore missing (null) configs that don't exist anymore which may affect CloudStack's behaviour. Cheers.