[dreamwidth/dreamwidth] 318978: Fix dispatch() sending mixed task types to wrong S...
Branch: refs/heads/main Home: https://github.com/dreamwidth/dreamwidth Commit: 3189782e88a86b4df420002a7b9e67cb82666cc7 https://github.com/dreamwidth/dreamwidth/commit/3189782e88a86b4df420002a7b9e67cb82666cc7 Author: Mark Smith mark@dreamwidth.org Date: 2026-02-15 (Sun, 15 Feb 2026)
Changed paths: M cgi-bin/DW/TaskQueue.pm
Log Message:
Fix dispatch() sending mixed task types to wrong SQS queue
dispatch() batched all DW::Task objects into a single send() call, but
send() routes the entire batch to the queue of the first task. When a
single dispatch(
jobs) contained both LJ::Events (converted to
FiredEvent tasks) and SphinxCopier tasks, the SphinxCopier messages
ended up in the ESN queue, causing "Can't locate object method work"
errors in the ESN worker.
Group tasks by type before sending so each type goes to its own queue. Also croak on failed module loads in start_work() instead of silently continuing.
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
