You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@allura.apache.org by Pranav Sharma <pr...@gmail.com> on 2016/02/23 19:58:20 UTC
[allura:tickets] #8019 Too many cached_branches/tags
@Dave, How to proceed with this one?
---
** [tickets:#8019] Too many cached_branches/tags**
**Status:** open
**Milestone:** unreleased
**Labels:** performance
**Created:** Mon Nov 09, 2015 07:09 PM UTC by Dave Brondsema
**Last Updated:** Mon Nov 09, 2015 07:09 PM UTC
**Owner:** nobody
Some repos can get a large number of cached branches or tags. The large lists cause a ming performance penalty: e.g. one request timing had 296ms in mongo, 2304ms in ming.
This is particular true for the sidebar when it hits `repo.forks` property (twice), which loads many repo objects into memory. We could look into ways to not load those fields when not needed, or skip ming validation on them (see `validate_ranges` option of ming `Array`). Or just querying for a count and not getting the objects at all. Or cap the size of the lists.
>From forge-allura's own mongo, look at the size of these cached branches lists:
~~~~
> db['git-repository'].find({}).forEach(function(u) { print(u.cached_branches && u.cached_branches.length, u.url_path) });
undefined /p/test/
undefined /u/masterbunnyfu/
undefined /u/shujisado/
undefined /p/allura/
0 /u/swelltt/
undefined /u/mtem/
undefined /u/barki2015/
0 /p/allura/
0 /u/dnayak/
24 /u/brondsem/
776 /p/allura/
547 /u/saintaardvark/
725 /u/lxj/
550 /u/testmr/
550 /u/vansteenburgh/
583 /u/alexluberg/
543 /u/masterbunnyfu/
643 /u/jetmind/
649 /u/heiths/
577 /u/shujisado/
641 /u/mishravikas/
695 /u/yesidid180/
758 /u/jredd/
776 /u/pranav/
~~~~
---
Sent from forge-allura.apache.org because dev@allura.apache.org is subscribed to https://forge-allura.apache.org/p/allura/tickets/
To unsubscribe from further messages, a project admin can change settings at https://forge-allura.apache.org/p/allura/admin/tickets/options. Or, if this is a mailing list, you can unsubscribe from the mailing list.