Revert "Use weakref for change cache"
This reverts commit b9704302bdb6857026319ac80df7b490a2282f89.
This is strongly suspected of causing a memory leak.
Change-Id: I0ebf9cee304277909a0b80420ac7ba659a437b29
diff --git a/zuul/scheduler.py b/zuul/scheduler.py
index 026763b..e5924f8 100644
--- a/zuul/scheduler.py
+++ b/zuul/scheduler.py
@@ -595,6 +595,8 @@
self._reenqueueTenant(old_tenant, tenant)
+ # TODOv3(jeblair): update for tenants
+ # self.maintainConnectionCache()
self.connections.reconfigureDrivers(tenant)
# TODOv3(jeblair): remove postconfig calls?
@@ -726,6 +728,23 @@
finally:
self.run_handler_lock.release()
+ def maintainConnectionCache(self):
+ # TODOv3(jeblair): update for tenants
+ relevant = set()
+ for tenant in self.abide.tenants.values():
+ for pipeline in tenant.layout.pipelines.values():
+ self.log.debug("Gather relevant cache items for: %s" %
+ pipeline)
+
+ for item in pipeline.getAllItems():
+ relevant.add(item.change)
+ relevant.update(item.change.getRelatedChanges())
+ for connection in self.connections.values():
+ connection.maintainCache(relevant)
+ self.log.debug(
+ "End maintain connection cache for: %s" % connection)
+ self.log.debug("Connection cache size: %s" % len(relevant))
+
def process_event_queue(self):
self.log.debug("Fetching trigger event")
event = self.trigger_event_queue.get()