Refresh feeds cron job is too slow
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Mahara |
Fix Released
|
Low
|
Richard Mansfield |
Bug Description
When there are invalid feeds the long timeouts can delay the rest of the cron job, including the core cron tasks. On demo.mahara.org it sometimes goes on for more than 5 minutes. The updating of feeds should happen in a separate process, or failing that, we should at least make the timeout shorter and/or make sure it gets run last.
Both the temp export file cleanup and cleanup_feeds function happen to get run at the same times as refreshing the feeds, but they should be offset a bit.
cleanup_feeds tries to remove feeds from the list of feeds to be updated if those feeds no longer appear in any blocks. Another way to deal with the timeout problems when updating invalid feeds might be to reduce the frequency of update attempts for feeds that have failed to update for a while.
Changed in mahara: | |
status: | Triaged → Fix Committed |
milestone: | none → 1.4.0 |
Changed in mahara: | |
assignee: | nobody → Richard Mansfield (richard-mansfield) |
Changed in mahara: | |
status: | Fix Committed → Fix Released |
I've added a couple of workaround hacks to make this less of a problem (changed the time of cleanup_feeds & reduced the update frequency for feeds that have failed for 24 hours). But we should deal with it in a better way.