Skip to content

chore: use redis for django caches - #10975

Merged
jennifer-richards merged 15 commits into
mainfrom
feat/redis
Jun 4, 2026
Merged

chore: use redis for django caches#10975
jennifer-richards merged 15 commits into
mainfrom
feat/redis

Conversation

@jennifer-richards

Copy link
Copy Markdown
Member

No description provided.

* chore(dev): use redis for dev sessions

Adds a redis container with a persistent volume and uses this for sessions instead of the database. Results in the same general behavior as before - logins should be persistent until the docker compose stack is torn down.

* chore(deps): install redis/hiredis python pkgs

* chore: remove memcached (mostly)

Still keeps some config references and a custom cache backend

* chore: switch to django-redis for sentinel support

* chore: production redis cache config

Uses sentinel. Untested.
Does not make a functional difference in most cases, but
might as well exercise the class.
@jennifer-richards
jennifer-richards marked this pull request as ready for review June 3, 2026 21:29
rjsparks
rjsparks previously approved these changes Jun 3, 2026
@jennifer-richards
jennifer-richards merged commit 60c9f28 into main Jun 4, 2026
7 checks passed
@jennifer-richards
jennifer-richards deleted the feat/redis branch June 4, 2026 14:54
kesara added a commit that referenced this pull request Jun 10, 2026
* ci: numeric settings -> int for searchindex cfg (#10904)

* fix: remove no longer needed notification to the rfc-editor (#10911)

* fix: meeting_stats -> 404 for nonexistent meeting (#10896)

* fix: meeting_stats->404 for nonexistent number

* test: add test case

* chore: fix lint

* test: fix new test

* fix: set searchindex hiddenDefault flag (#10916)

* fix: set searchindex hiddenDefault flag

* chore: adjust docstring comments

* ci: pin xym until we can adapt to new required arguments (#10939)

* ci: update base image target version to 20260527T1529

* fix: adjust searchindex abstract sanitiziation (#10950)

* fix: adjust searchindex abstract sanitiziation

* test: leading/trailing whitespace to be stripped

* fix: strip each line of the abstract

* chore: add items to tracked yarn cache (#10964)

* chore: configurable I-D submit timeout for k8s (#10971)

* feat: update rfc json (#10951)

* feat: update rfc json

* fix: resilience around fetch of publication status

* fix: guards against malformed RFC document objects

* chore: fix log msg typos

* test: mock more async calls

* chore: nginx -> 1.30 (#10978)

* chore: "nginxinc" GH org is now "nginx" (#10981)

* chore: use redis for django caches (#10975)

* chore: drop memcache, add redis (WIP) (#10940)

* chore(dev): use redis for dev sessions

Adds a redis container with a persistent volume and uses this for sessions instead of the database. Results in the same general behavior as before - logins should be persistent until the docker compose stack is torn down.

* chore(deps): install redis/hiredis python pkgs

* chore: remove memcached (mostly)

Still keeps some config references and a custom cache backend

* chore: switch to django-redis for sentinel support

* chore: production redis cache config

Uses sentinel. Untested.

* chore: telemetry: add redis, drop memcache

* chore: remove now-unused cache.py

* chore: adjust imports in gunicorn.conf.py

* chore: adjust redis sentinel settings

* feat: size limit on redis values

* style: ruff ruff

* chore(dev): SizeLimitingRedisClient for dev

Does not make a functional difference in most cases, but
might as well exercise the class.

* test: use db-backed sessions for tests

* chore: typing nit

* ci: remove DEPLOY_STRATEGY

"strategery"

* ci: remove strategy from dt manifests altogether

* ci: update base image target version to 20260604T1454

* ci: remove guard against missing CACHES in prod (#10986)

* chore: revert switch to redis (#10991)

* ci: update base image target version to 20260605T2314

* feat: add group type to search index (#11001)

* feat: self-serve queries for inputs to reporting and survey purposes (#10976)

* feat: utilities to count I-D submitters and authors by year

* chore: fix comment typo

* fix: return querysets and sets rather than lists. Improve docstrings.

* refactor: don't flatten sets to lists

* fix: filter to posted submissions and produce report

* chore: black

* chore: boilerplate

* fix: re-re-re fix the ^M problem in the issue template

* feat: self-serve queries for inputs to reporting and survey purposes

* Update ietf/utils/tests_reports.py

Co-authored-by: Jennifer Richards <jeni@borkbork.org>

---------

Co-authored-by: Jennifer Richards <jeni@borkbork.org>

* ci: remove strategy from dt manifests (#11004)

* fix: tweak logging settings to avoid spurious keyerrors (#11009)

* fix: improved source and keywords for rfc json (#11008)

* test: make check for April 1 resilient across line-breaks (#11006)

* test: make check for April 1 resilient across line-breaks

* test: be resilient against faker creating a 63 character long title

* chore(dev): fix nginx config (#11014)

keepalive 0 is not supported by the version of nginx
in the dev container

---------

Co-authored-by: Jennifer Richards <jennifer@staff.ietf.org>
Co-authored-by: Robert Sparks <rjsparks@nostrum.com>
Co-authored-by: jennifer-richards <19472766+jennifer-richards@users.noreply.github.com>
Co-authored-by: Jennifer Richards <jeni@borkbork.org>
@github-actions github-actions Bot locked as resolved and limited conversation to collaborators Jun 11, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants