Skip to content

Update requirements.txt - #120

Merged
ross merged 2 commits into
mainfrom
update-requirements
Aug 10, 2026
Merged

ross merged 2 commits into
mainfrom
update-requirements

Conversation

@ross

@ross ross commented Aug 10, 2026

Copy link
Copy Markdown
Owner

No description provided.

@ross ross self-assigned this Aug 10, 2026
mysql-connector-python defaults connect_timeout to None (no timeout at
all). CONN_MAX_AGE=300 means most requests reuse an existing connection,
but the *first* one -- opened by a freshly forked gunicorn worker, or by
the Cron thread's first tick -- has nothing to reuse. If that connection
attempt stalls for any reason, the calling thread hangs forever with
nothing logged, which matches the current 499s: the container logs show
"Cron run: starting" (the first line of Cron.run(), before it touches the
DB) and then nothing else at all, ever.

This doesn't tell us *why* the connection is stalling, but it stops it
from hanging silently -- a stuck attempt will now fail loudly and fast,
get logged, and let the worker (or Cron's next tick) recover instead of
being wedged permanently.

Prime suspect for the underlying stall: mysql-connector-python has no
upper-bound version constraint in pyproject.toml (unlike Django's <6.0),
and this branch's requirements.txt regen jumped it from 9.7.0 to 26.7.0 in
one shot -- by far the largest version delta of anything in that diff,
and the one piece that actually talks to the real MariaDB server on every
request. Worth pinning down/back if the timeout reveals a connection
failure rather than just occasional slowness.
@ross
ross merged commit f8746d2 into main Aug 10, 2026
1 check passed
@ross
ross deleted the update-requirements branch August 10, 2026 21:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant