Branch: refs/heads/main
Home: https://github.com/dreamwidth/dreamwidth
Commit: 55d1983593d30fd637a0f5303249894099cc5790
https://github.com/dreamwidth/dreamwidth/commit/55d1983593d30fd637a0f5303249894099cc5790
Author: Mark Smith mark@dreamwidth.org
Date: 2026-02-15 (Sun, 15 Feb 2026)
Changed paths:
R bin/maint/synsuck.pl
M bin/maint/taskinfo.txt
M bin/upgrading/update-db-general.pl
M cgi-bin/DW/Controller/Misc.pm
M cgi-bin/DW/Task/SynSuck.pm
M cgi-bin/LJ/Console/Command/SynEdit.pm
M cgi-bin/LJ/Feed.pm
M cgi-bin/LJ/SynSuck.pm
Log Message:
Add exponential backoff for dead syndicated feeds
Dead feeds (HTTP errors, DNS failures, parse errors) were polled every
1-3 hours forever with no escalation. Add a failcount column to the
syndicated table and apply exponential backoff: base_delay * 2^min(failcount, 7),
capped at 30 days. Dead feeds settle into ~monthly polling instead of ~2,920
wasted requests per year.
Three backoff modes: escalate (feed/account errors), reset (success or
not-modified), hold (our infrastructure issues like nodb/posterror).
Reset failcount on URL change (syn_edit), feed merge, and REST ping.
Also converts SynSuck verbose print statements to Log::Log4perl,
removes the now-drained legacy synsuck.pl maint worker, and fixes an
out-of-scope $user reference in parse_items_from_feed().
Co-Authored-By: Claude Opus 4.6 noreply@anthropic.com
To unsubscribe from these emails, change your notification settings at https://github.com/dreamwidth/dreamwidth/settings/notifications