allura-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Dave Brondsema" <>
Subject [allura:tickets] #7566 Milestone admin page can be very slow
Date Fri, 15 Aug 2014 18:54:57 GMT
- **status**: code-review --> in-progress
- **Comment**:

Did either or both you do tests with large number of milestones?  (Not just large number of
tickets).  I think the problem with e.g.
is that there are over 200 milestones.  Here is a timing/call-count capture:
 Doing everything sequentially is what is adding up, particularly for IO operations to mongo.
 Each is fast on its own, but doing so many is the problem.

I'm concerned that the new implementation has 3 mongo queries instead of 1, for every single
milestone.  But there is also reduced ACL related queries which might help.  I'd suggest mocking
up data with lots of milestones and a good number of tickets too.  Then enable `stats.sample_rate`
in the `.ini` file and see what the mongo call counts are in stats.log.  Compare master to
this branch.  Also compare to having no `security.has_access` call at all (that might actually
not decrease mongo calls too much since ACL info is heavily cached).  See what you can get
with the smallest "mongo" call count.

That all said I think it would be safe to skip the ACL checks altogether for this particular
page, for reasons Igor gave.  I'd rather not make the milestone sidebar any more incorrect.
 Perhaps add a `skip_acl_checks=False` default param to the `milestone_count` method and pass
in `True` when called by the milestone admin page.


** [tickets:#7566] Milestone admin page can be very slow**

**Status:** in-progress
**Milestone:** forge-aug-22
**Labels:** performance 
**Created:** Fri Jul 11, 2014 04:23 PM UTC by Dave Brondsema
**Last Updated:** Thu Aug 14, 2014 09:32 PM UTC
**Owner:** Alexander Luberg in particular is getting really slow.
 I suspect its due to queries for the "Progress" column for every milestone.  Perhaps those
can be run in a single mongo query somehow, or parallelize with threads.  Or just skipped
for closed milestones.


Sent from because is subscribed to

To unsubscribe from further messages, a project admin can change settings at
 Or, if this is a mailing list, you can unsubscribe from the mailing list.
  • Unnamed multipart/related (inline, None, 0 bytes)
View raw message