← Back to team overview

launchpad-dev team mailing list archive

performance tuesday - late but not forgotten.

 

So it appears  that having 3 hours of calls is counterproductive :)
Thats why I'm sending this on Wednesday.

Anyhow, BugTask:+index is still slow; so I asked a LOSA for profiling
to be enabled on staging.

5 seconds of bug 1 are spent in
+1            0      5.1027      0.0191
+lp.bugs.browser.bugtask:3356(getBugTaskAndNominationViews)

(See https://bugs.edge.launchpad.net/malone/+bug/636158)

Of that, 43% is in getConjoinedMaster, and of that 40% in
DistroSeries.currentseries.

Thats ~1 second, or 20% of our target page budget.

There is a FIXME in that function to make it be served straight from
the DB; what we probably need to do is:
 - figure out the SQL needed to answer it
 - make it possible to eager load it when obtaining the distro as part
of eager loading related data for bugtasks.

There are 14 queries for distroseries, most by id indicating that
we're doing related-object-traversal, and some by range (the calls to
'distro.currentseries' trigger loads of *all* series for that distro).

We should be able to avoid all those round trips, and the extra
deserialisation and cache replacements if we eager load appropriately
and preset the currentseries.

Better still, we may be able to persist the currentseries into the DB
and stop doing complex logic to figure out this common question.

-Rob