[dreamwidth/dreamwidth] 1b24c1: Handle unhandled exceptions in SynSuck worker via ...
Branch: refs/heads/main Home: https://github.com/dreamwidth/dreamwidth Commit: 1b24c1ccf3b8b16e581c478bde4c70c0af428f01 https://github.com/dreamwidth/dreamwidth/commit/1b24c1ccf3b8b16e581c478bde4c70c0af428f01 Author: Mark Smith mark@dreamwidth.org Date: 2026-02-15 (Sun, 15 Feb 2026)
Changed paths: M cgi-bin/DW/Task/SynSuck.pm
Log Message:
Handle unhandled exceptions in SynSuck worker via delay()
When LJ::SynSuck::update_feed() dies with an unhandled exception (e.g. "Hour '24' out of range"), the normal delay() call is never reached, so checknext is never updated. The scheduler immediately re-enqueues the same feed, creating a tight infinite retry loop.
Now the worker catches the exception, calls delay() to push checknext 6 hours into the future with laststatus='exception', and returns COMPLETED. This matches how every other error path in SynSuck already works and is better than the old TheSchwartz behavior (which retried 3 times over 90 minutes then silently gave up without updating checknext or laststatus).
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
