I think your hint was of great help! Droping the GROUP BY increased the
speed by an order of magnitude. I also droped the other similarly
redundant GROUP BY (see my last commit). This has caused a drastical
performance kick. if you compare the old result:
$ cat logs/*bugs_udd.out
...
Time: 281.581650019
Query: EXECUTE query_bug_packages('debian-games')
Rendering bugs from UDD for Blend 'debian-games' took 299 seconds
Time: 34.5106248856
Query: EXECUTE query_bug_packages('debian-gis')
Rendering bugs from UDD for Blend 'debian-gis' took 37 seconds
...
Time: 868.058537006
Query: EXECUTE query_bug_packages('debian-junior')
Rendering bugs from UDD for Blend 'debian-junior' took 892 seconds
...
Rendering bugs from UDD for Blend 'debian-med' took 27 seconds
Time: 193.018954039
Query: EXECUTE query_bug_packages('debian-multimedia')
Rendering bugs from UDD for Blend 'debian-multimedia' took 198 seconds
...
Time: 183.071342945
Query: EXECUTE query_bug_packages('debian-science')
Rendering bugs from UDD for Blend 'debian-science' took 194 seconds
cat logs/*bugs_udd.out
...
Rendering bugs from UDD for Blend 'debian-games' took 57 seconds
Rendering bugs from UDD for Blend 'debian-gis' took 9 seconds
Time: 70.1499569416
Query: EXECUTE query_bug_packages('debian-junior')
Rendering bugs from UDD for Blend 'debian-junior' took 86 seconds
...
Rendering bugs from UDD for Blend 'debian-med' took 28 seconds
Rendering bugs from UDD for Blend 'debian-multimedia' took 28 seconds
...
Rendering bugs from UDD for Blend 'debian-science' took 31 seconds
So if you compare the time from Debian Junior 892 versus 86 seconds
that's the amount of time which is perfectly acceptable.
Now I was also able to run debian-edu on my box in a sensible time
frame:
Time: 178.415522814
Query: EXECUTE query_bugs('debian-edu')
Time: 1252.45552516
Query: EXECUTE query_bug_packages('debian-edu')
Rendering bugs from UDD for Blend 'debian-edu' took 1437 seconds
I think this would be also acceptable to run on production UDD.
However, I wonder whether you could do some further review after this
issue should be clarified. Perhaps we get another factor 2 or 4 for
speeding up to make sure we will not uselessly stress test Debian
hardware.