diff --git a/util/ipresolver/__init__.py b/util/ipresolver/__init__.py index d57bacd18..97cb3acec 100644 --- a/util/ipresolver/__init__.py +++ b/util/ipresolver/__init__.py @@ -84,8 +84,6 @@ class IPResolver(IPResolverInterface): self.app = app self.geoip_db = geoip2.database.Reader('util/ipresolver/GeoLite2-Country.mmdb') self._worker = _UpdateIPRange(_UPDATE_INTERVAL) - if not app.config.get('TESTING', False): - self._worker.start() @ttl_cache(maxsize=100, ttl=600) def is_ip_possible_threat(self, ip_address): @@ -131,6 +129,8 @@ class IPResolver(IPResolverInterface): return location_function(ip_address) def _get_location_function(self): + if not self.app.config.get('TESTING', False) and not self._worker.is_alive(): + self._worker.start() try: cache = CACHE sync_token = cache.get('sync_token', None)