From e45531b617b197801ab0b71612984fa2d40735d0 Mon Sep 17 00:00:00 2001 From: Katia Esposito Date: Fri, 3 Nov 2023 02:52:58 +0100 Subject: [PATCH 1/3] lock hotfix --- src/adsb_api/utils/provider.py | 32 ++++++++++++++++++++------------ 1 file changed, 20 insertions(+), 12 deletions(-) diff --git a/src/adsb_api/utils/provider.py b/src/adsb_api/utils/provider.py index b86a9b3..64f0d55 100644 --- a/src/adsb_api/utils/provider.py +++ b/src/adsb_api/utils/provider.py @@ -32,21 +32,29 @@ class Base: async def _lock(self, name): key = f"lock:{name}" value = gethostname() + if not isinstance(self.redis, redis.Redis): print("Lock: Redis is not connected") return False - print(f"Trying to Lock {key} as {value}") - if await self.redis.set(key, value, nx=True, ex=10): - print(f"Locked {key}:{value}") - return True - - current_locker = (await self.redis.get(key)).decode() - if current_locker == value: - print(f"Already Locked {key}") - return True - print(f"Lock {name} is locked by {current_locker}") - return False - + try: + print(f"Trying to Lock {key} as {value}") + if await self.redis.set(key, value, nx=True, ex=10): + print(f"Locked {key}:{value}") + return True + + current_locker = await self.redis.get(key) + if current_locker is None: + print(f"Lock {name} is not locked") + return False + current_locker = current_locker.decode() + if current_locker == value: + print(f"Already Locked {key}") + return True + print(f"Lock {name} is locked by {current_locker}") + return False + except Exception as e: + print("Error Locking:", e) + return False class Provider(Base): def __init__(self, enabled_bg_tasks): self.aircrafts = {} From fd90ed9b7880cda356997ee4a63559797a0673ee Mon Sep 17 00:00:00 2001 From: Katia Esposito Date: Fri, 3 Nov 2023 02:57:11 +0100 Subject: [PATCH 2/3] Disable lock for provider for now --- src/adsb_api/utils/provider.py | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/src/adsb_api/utils/provider.py b/src/adsb_api/utils/provider.py index 64f0d55..f9d0c8e 100644 --- a/src/adsb_api/utils/provider.py +++ b/src/adsb_api/utils/provider.py @@ -107,10 +107,6 @@ async def shutdown(self): async def fetch_hub_stats(self): try: while True: - if not await self._lock("hub_stats"): - print(f"hub_stats not Locked...") - await asyncio.sleep(5) - continue try: async with self.client_session.get(STATS_URL) as resp: data = await resp.json() @@ -126,10 +122,6 @@ async def fetch_hub_stats(self): async def fetch_ingest(self): try: while True: - if not await self._lock("ingest"): - print(f"ingest not Locked...") - await asyncio.sleep(5) - continue try: ips = [ record.host @@ -180,10 +172,6 @@ async def fetch_ingest(self): async def fetch_mlat(self): try: while True: - if not await self._lock("mlat"): - print(f"mlat not Locked...") - await asyncio.sleep(5) - continue try: data_per_server = {} for server in MLAT_SERVERS: From 76094cff1ead4ed3b3772fe884f731dd18476349 Mon Sep 17 00:00:00 2001 From: Katia Esposito Date: Sat, 27 Jan 2024 21:34:53 +0100 Subject: [PATCH 3/3] smaller image --- src/adsb_api/utils/browser2.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/adsb_api/utils/browser2.py b/src/adsb_api/utils/browser2.py index ce81542..4fcf949 100644 --- a/src/adsb_api/utils/browser2.py +++ b/src/adsb_api/utils/browser2.py @@ -76,8 +76,8 @@ async def _add_tab_to_pool(self): self.logger.info("Total number of tabs after addition: %s", self._total_tabs) context = await self.browser.new_context( base_url=self.url, - viewport={"width": 512, "height": 512}, - screen={"width": 512, "height": 512}, + viewport={"width": 256, "height": 256}, + screen={"width": 256, "height": 256}, ) tab = await context.new_page() tab.__use_count = 0 @@ -234,7 +234,7 @@ async def before_add_to_pool_cb(page): page.route("**/api/0/routeset", lambda route: route.abort()), page.route("**/globeRates.json", lambda route: route.abort()), page.route("https://api.planespotters.net/*", lambda route: route.abort()), - page.set_viewport_size({"width": 512, "height": 512}), + page.set_viewport_size({"width": 256, "height": 256}), page.goto("?screenshot&zoom=6&hideButtons&hideSidebar&lat=82&lon=-5&nowebGL"), ] try: