From 9225f8bb28d291b1610c8a58e3233aa6bbdc1808 Mon Sep 17 00:00:00 2001 From: Tomasz Pankowski Date: Sat, 5 Apr 2025 00:13:34 +0200 Subject: [PATCH 1/2] fix: explicitly delete error references to prevent memory leaks Add explicit "del error" statement to prevent reference cycles between exception objects and local variables. This helps the garbage collector promptly reclaim memory after request processing, which is especially important in high-traffic web applications where exception objects with traceback information can consume significant memory. --- src/flask/app.py | 1 + 1 file changed, 1 insertion(+) diff --git a/src/flask/app.py b/src/flask/app.py index d2743c41ba..922b44fd6e 100644 --- a/src/flask/app.py +++ b/src/flask/app.py @@ -1525,6 +1525,7 @@ def wsgi_app( error = None ctx.pop(error) + del error def __call__( self, environ: WSGIEnvironment, start_response: StartResponse From 9075225c5bfb4086c6ea662bd85b3138f6c72df8 Mon Sep 17 00:00:00 2001 From: Tomasz Pankowski Date: Sun, 6 Apr 2025 10:12:15 +0200 Subject: [PATCH 2/2] update CHANGES --- CHANGES.rst | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGES.rst b/CHANGES.rst index 0ee2751410..9f228adf4e 100644 --- a/CHANGES.rst +++ b/CHANGES.rst @@ -4,6 +4,7 @@ Version 3.2.0 Unreleased - Remove previously deprecated code: ``__version__``. :pr:`5648` +- Fix reference cycle in exception handling: :issue:`5709` Version 3.1.1