Mute neutron.callbacks notification logs.

We believe they could be the source of some yielding,
and consequient DBDeadlocks we're experiencing when using
AFTER_READ to extend resources.

This will need to be revised.

Change-Id: I040b3a3c9e137267dfe237dd90fb525026b0d16e
This commit is contained in:
Miguel Angel Ajo 2015-07-15 15:42:52 +02:00
parent cdcffc709b
commit e19eb49c1c
1 changed files with 11 additions and 3 deletions

View File

@ -131,14 +131,22 @@ class CallbacksManager(object):
def _notify_loop(self, resource, event, trigger, **kwargs):
"""The notification loop."""
LOG.debug("Notify callbacks for %(resource)s, %(event)s",
{'resource': resource, 'event': event})
#TODO(QoS): we found callback logs happening in the middle
# of transactions being a source of DBDeadLocks
# because they can yield. (Can LOG writes yield?,
# please revisit this).
#
#LOG.debug("Notify callbacks for %(resource)s, %(event)s",
# {'resource': resource, 'event': event})
errors = []
# TODO(armax): consider using a GreenPile
for callback_id, callback in self._callbacks[resource][event].items():
try:
LOG.debug("Calling callback %s", callback_id)
#TODO(QoS): muting logs for the reasons explained in the
# previous TODO(QoS)
#LOG.debug("Calling callback %s", callback_id)
callback(resource, event, trigger, **kwargs)
except Exception as e:
LOG.exception(_LE("Error during notification for "