From eceb5e2eea554ea0f9baf7abc1b1972459854cef Mon Sep 17 00:00:00 2001 From: Sulabh Katila Date: Wed, 21 Feb 2024 19:51:58 -0500 Subject: Fixed #34806 -- Made cached_db session backend resilient to cache write errors. Co-authored-by: Natalia <124304+nessita@users.noreply.github.com> --- docs/topics/http/sessions.txt | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) (limited to 'docs/topics') diff --git a/docs/topics/http/sessions.txt b/docs/topics/http/sessions.txt index 4f635f1704..d799c245de 100644 --- a/docs/topics/http/sessions.txt +++ b/docs/topics/http/sessions.txt @@ -76,9 +76,17 @@ Once your cache is configured, you have to choose between a database-backed cache or a non-persistent cache. The cached database backend (``cached_db``) uses a write-through cache -- -session writes are applied to both the cache and the database. Session reads -use the cache, or the database if the data has been evicted from the cache. To -use this backend, set :setting:`SESSION_ENGINE` to +session writes are applied to both the database and cache, in that order. If +writing to the cache fails, the exception is handled and logged via the +:ref:`sessions logger `, to avoid failing an +otherwise successful write operation. + +.. versionchanged:: 5.1 + + Handling and logging of exceptions when writing to the cache was added. + +Session reads use the cache, or the database if the data has been evicted from +the cache. To use this backend, set :setting:`SESSION_ENGINE` to ``"django.contrib.sessions.backends.cached_db"``, and follow the configuration instructions for the `using database-backed sessions`_. -- cgit v1.3