yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #08282
[Bug 1269655] [NEW] Make prune compute_node_stats configurable
Public bug reported:
In compute/manager.py, there is a periodic task named as update_available_resource(), it will update resource for each compute periodically.
@periodic_task.periodic_task
def update_available_resource(self, context):
"""See driver.get_available_resource()
Periodic process that keeps that the compute host's understanding of
resource availability and usage in sync with the underlying hypervisor.
:param context: security context
"""
new_resource_tracker_dict = {}
nodenames = set(self.driver.get_available_nodes())
for nodename in nodenames:
rt = self._get_resource_tracker(nodename)
rt.update_available_resource(context) <<<<<<<<<< Update here
new_resource_tracker_dict[nodename] = rt
In resource_tracker.py,
https://github.com/openstack/nova/blob/master/nova/compute/resource_tracker.py#L384
self._update(context, resources, prune_stats=True)
It always set prune_stats as True, this caused some problems. As if
someone put some metrics to compute_node_stats table, and if those
metrics does not change frequently, the periodic task will prune the new
metrics.
It is better adding a configuration parameter in nova.cont to make
prune_stats as configurable.
** Affects: nova
Importance: Undecided
Status: New
--
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Compute (nova).
https://bugs.launchpad.net/bugs/1269655
Title:
Make prune compute_node_stats configurable
Status in OpenStack Compute (Nova):
New
Bug description:
In compute/manager.py, there is a periodic task named as update_available_resource(), it will update resource for each compute periodically.
@periodic_task.periodic_task
def update_available_resource(self, context):
"""See driver.get_available_resource()
Periodic process that keeps that the compute host's understanding of
resource availability and usage in sync with the underlying hypervisor.
:param context: security context
"""
new_resource_tracker_dict = {}
nodenames = set(self.driver.get_available_nodes())
for nodename in nodenames:
rt = self._get_resource_tracker(nodename)
rt.update_available_resource(context) <<<<<<<<<< Update here
new_resource_tracker_dict[nodename] = rt
In resource_tracker.py,
https://github.com/openstack/nova/blob/master/nova/compute/resource_tracker.py#L384
self._update(context, resources, prune_stats=True)
It always set prune_stats as True, this caused some problems. As if
someone put some metrics to compute_node_stats table, and if those
metrics does not change frequently, the periodic task will prune the
new metrics.
It is better adding a configuration parameter in nova.cont to make
prune_stats as configurable.
To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/1269655/+subscriptions
Follow ups
References