From 776a32ba0c51f709910bae270011e64693bf393b Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 9 Apr 2026 16:58:36 +0000 Subject: [PATCH 1/3] Initial plan From 7592eb57b7a1a085d08273d535c30fba3e91aa3c Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 9 Apr 2026 17:07:42 +0000 Subject: [PATCH 2/3] Fix proxy warning at boot time by removing DB access during app initialization Agent-Logs-Url: https://github.com/GeoNode/geonode/sessions/6036f356-560b-4347-8a98-b5fff9c0bccb Co-authored-by: etj <717359+etj@users.noreply.github.com> --- geonode/proxy/apps.py | 19 +++++++------------ geonode/proxy/utils.py | 7 ------- 2 files changed, 7 insertions(+), 19 deletions(-) diff --git a/geonode/proxy/apps.py b/geonode/proxy/apps.py index 3b0174a8473..1279b1b37e8 100644 --- a/geonode/proxy/apps.py +++ b/geonode/proxy/apps.py @@ -17,13 +17,7 @@ # ######################################################################### from django.apps import AppConfig -from django.db.models.signals import post_migrate - -from .utils import proxy_urls_registry - - -def run_setup_hooks(*args, **kwargs): - proxy_urls_registry.initialize() +from django.db.models import signals class GeoNodeProxyAppConfig(AppConfig): @@ -32,8 +26,9 @@ class GeoNodeProxyAppConfig(AppConfig): def ready(self): super().ready() - try: - run_setup_hooks() - except Exception: - # This is in case the Service table doesn't exist yet - post_migrate.connect(run_setup_hooks, sender=self) + from geonode.base.models import Link + + from .utils import link_post_delete, link_post_save + + signals.post_save.connect(link_post_save, sender=Link) + signals.post_delete.connect(link_post_delete, sender=Link) diff --git a/geonode/proxy/utils.py b/geonode/proxy/utils.py index 98a2fc263f4..a7fbf4e3e23 100644 --- a/geonode/proxy/utils.py +++ b/geonode/proxy/utils.py @@ -1,7 +1,6 @@ from urllib.parse import urlsplit from django.conf import settings -from django.db.models import signals from django.utils.timezone import now site_url = urlsplit(settings.SITEURL) @@ -10,7 +9,6 @@ class ProxyUrlsRegistry: - _first_init = True _last_registry_load = None _registry_reload_threshold = getattr(settings, "PROXY_RELOAD_REGISTRY_THRESHOLD_DAYS", 1) @@ -27,11 +25,6 @@ def initialize(self): remote_host = urlsplit(link.url).hostname self.register_host(remote_host) - if self._first_init: - signals.post_save.connect(link_post_save, sender=Link) - signals.post_delete.connect(link_post_delete, sender=Link) - self._first_init = False - self._last_registry_load = now() def set(self, hosts): From c833e73c84696eb2dc83cc07f88e7a73ddc500c7 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 9 Apr 2026 17:09:37 +0000 Subject: [PATCH 3/3] Move utils import to module level in apps.py per code review feedback Agent-Logs-Url: https://github.com/GeoNode/geonode/sessions/6036f356-560b-4347-8a98-b5fff9c0bccb Co-authored-by: etj <717359+etj@users.noreply.github.com> --- geonode/proxy/apps.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/geonode/proxy/apps.py b/geonode/proxy/apps.py index 1279b1b37e8..3bd742ea12c 100644 --- a/geonode/proxy/apps.py +++ b/geonode/proxy/apps.py @@ -19,6 +19,8 @@ from django.apps import AppConfig from django.db.models import signals +from .utils import link_post_delete, link_post_save + class GeoNodeProxyAppConfig(AppConfig): name = "geonode.proxy" @@ -28,7 +30,5 @@ def ready(self): super().ready() from geonode.base.models import Link - from .utils import link_post_delete, link_post_save - signals.post_save.connect(link_post_save, sender=Link) signals.post_delete.connect(link_post_delete, sender=Link)