Bug heat calculation should be done using a stored procedure

Bug #582195 reported by Graham Binns
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Launchpad itself
Fix Released
High
Graham Binns

Bug Description

What happens:
If calculate-bug-heat.py doesn't run for 24 hours or so (say during rollouts and re-rolls) then a lot of bugs' heat gets outdated. Once the garbo script has run and dumped a bunch of CalculateBugHeatJobs into the queue, c-b-h can't cope with the volume and appears to get stuck.

What should happen:
The problem is that we try to calculate bug heat serially, even for outdated bugs (of which there are at least hundreds even on a quiet day). So, c-b-h.py tries to go through the several thousand jobs in its queue one by one and never gets finished. There are ways to mitigate this problem but it would be simpler to do the calculations all at once as part of garbo-hourly or -daily.

We should replace the jobs-based bug heat calculation code with a stored procedure. This could work for both re-calculations of outdated bug heat (by being called for all out of date bugs by garbo) and on-change recalculations.

Related branches

Graham Binns (gmb)
Changed in malone:
status: Triaged → In Progress
assignee: nobody → Graham Binns (gmb)
milestone: none → 10.05
Graham Binns (gmb)
Changed in malone:
status: In Progress → Fix Committed
Curtis Hovey (sinzui)
Changed in malone:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.