diff options
author | Dan McGee <dan@archlinux.org> | 2012-11-27 15:48:01 +0100 |
---|---|---|
committer | Dan McGee <dan@archlinux.org> | 2012-11-27 15:48:01 +0100 |
commit | eea25558c766d5f3a32879d16e579d051906cbf3 (patch) | |
tree | c181d2ee27722ea1afb74990dd400202f9eeb5ec | |
parent | a732d3cebcb8ff3170502b13d01ba90ac8efe26f (diff) | |
download | archweb-eea25558c766d5f3a32879d16e579d051906cbf3.tar.gz archweb-eea25558c766d5f3a32879d16e579d051906cbf3.tar.xz |
Don't cache package properties as aggressively
For package signatures, it turns out it is way cheaper to just parse the
signature again rather than going though all the decorator and
cache_function_key business. This speeds up the mismatched signatures
report significantly once this is removed.
For base_package, given that we only call it once from our package
details template, it makes little sense to cache the result.
Signed-off-by: Dan McGee <dan@archlinux.org>
-rw-r--r-- | main/models.py | 3 | ||||
-rw-r--r-- | templates/packages/details.html | 6 |
2 files changed, 3 insertions, 6 deletions
diff --git a/main/models.py b/main/models.py index cc81637..603d7cc 100644 --- a/main/models.py +++ b/main/models.py @@ -141,7 +141,6 @@ class Package(models.Model): return '%s://%s%s' % (proto, domain, self.get_absolute_url()) @property - @cache_function(15) def signature(self): try: data = b64decode(self.pgp_signature) @@ -154,7 +153,6 @@ class Package(models.Model): return packets[0] @property - @cache_function(15) def signer(self): sig = self.signature if sig and sig.key_id: @@ -318,7 +316,6 @@ class Package(models.Model): new_pkgs.append(package) return new_pkgs - @cache_function(125) def base_package(self): """ Locate the base package for this package. It may be this very package, diff --git a/templates/packages/details.html b/templates/packages/details.html index aa07355..0a47217 100644 --- a/templates/packages/details.html +++ b/templates/packages/details.html @@ -103,12 +103,12 @@ {% else %} <tr> <th>Base Package:</th> - {% if pkg.base_package %} - <td>{% pkg_details_link pkg.base_package %}</td> + {% with pkg.base_package as base %}{% if base %} + <td>{% pkg_details_link base %}</td> {% else %} <td><a href="../{{ pkg.pkgbase }}/" title="Split package details for {{ pkg.pkgbase }}">{{ pkg.pkgbase }}</a></td> - {% endif %} + {% endif %}{% endwith %} </tr> {% endifequal %} <tr> |