# HG changeset patch # User Marcin Kuzminski # Date 1305476973 -7200 # Node ID cbdd583f1e5864c3ecd5fb55e3b216803e3f5e00 # Parent e861eb1c4a2f70514b45e2102f3678a8e0e5139a reverted copy of cached instance: CPython changelog total_time 39.7253162861 average on req 0.993132907152 changesets total_time 42.5156304836 average on req 0.425156304836 Total: 546 MB changelog total_time 35.5851216316 average on req 0.889628040791 changesets total_time 30.3608012199 average on req 0.303608012199 Total: 475 MB diff -r e861eb1c4a2f -r cbdd583f1e58 rhodecode/lib/base.py --- a/rhodecode/lib/base.py Sun May 15 18:22:02 2011 +0200 +++ b/rhodecode/lib/base.py Sun May 15 18:29:33 2011 +0200 @@ -2,8 +2,6 @@ Provides the BaseController class for subclassing. """ -import copy - from pylons import config, tmpl_context as c, request, session from pylons.controllers import WSGIController from pylons.templating import render_mako as render @@ -64,9 +62,9 @@ super(BaseRepoController, self).__before__() if c.repo_name: - r, dbrepo = self.scm_model.get(c.repo_name, retval='repo') + c.rhodecode_repo, dbrepo = self.scm_model.get(c.repo_name, retval='repo') - if r is not None: + if c.rhodecode_repo is not None: c.repository_followers = \ self.scm_model.get_followers(c.repo_name) c.repository_forks = self.scm_model.get_forks(c.repo_name) @@ -74,8 +72,3 @@ c.repository_followers = 0 c.repository_forks = 0 - # Since RhodeCode uses heavy memory caching we make a deepcopy - # of object taken from cache. This way we lose reference to cached - # instance in memory and keep it relatively small even for - # very large number of changesets - c.rhodecode_repo = copy.copy(r)