Currently the serial_no that is incremented every time the configuration
file is written is located on the 'cluster' object in the configuration
structure. However, this is wrong as the cluster serial_no should be
incremented only when the cluster state is changed (for whatever
definition of “changed” we will use), not simply because the
configuration file is written.
This patch changes so that the ConfigWriter._BumpSerialNo affects the
top-level ConfigData object.
Reviewed-by: ultrotter
"""Bump up the serial number of the config.
"""
- self._config_data.cluster.serial_no += 1
+ self._config_data.serial_no += 1
def _OpenConfig(self):
"""Read the config data from disk.
self._config_data = objects.ConfigData(nodes={node: nodeconfig},
instances={},
- cluster=globalconfig)
+ cluster=globalconfig,
+ serial_no=1)
self._WriteConfig()
@locking.ssynchronized(_config_lock, shared=1)