From e19eb49c1c066c8fa4a3c19183bca1daef553a5c Mon Sep 17 00:00:00 2001 From: Miguel Angel Ajo Date: Wed, 15 Jul 2015 15:42:52 +0200 Subject: [PATCH] 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 --- neutron/callbacks/manager.py | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/neutron/callbacks/manager.py b/neutron/callbacks/manager.py index 4927ff337..8d32ff7ef 100644 --- a/neutron/callbacks/manager.py +++ b/neutron/callbacks/manager.py @@ -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 " -- 2.45.2