#2366: Hotfix - fas /usr/lib/python2.6/site-packages/fas/templates/user/view.htmlw -------------------------+-------------------------------------------------- Reporter: ricky | Owner: webmaster Type: change | Status: new Priority: major | Milestone: Component: Web Content | Version: Severity: Normal | Keywords: hotfix -------------------------+-------------------------------------------------- = Change Requested = Applied the following patch to /usr/lib/python2.6/site- packages/fas/templates/user/view.html on fas0[1-3] to work around 500s on /user/view: {{{ --- /usr/lib/python2.6/site-packages/fas/templates/user/view.html 2010-08-27 15:57:26.000000000 +0000 +++ /home/fedora/ricky/view.html 2010-08-31 05:26:14.136666045 +0000 @@ -123,8 +123,8 @@ <dl> <dt>${_('Status:')}</dt> <dd> - <span class="approved" py:if="role.group in person.approved_memberships">${_('Approved')}</span> - <span class="unapproved" py:if="role.group in person.unapproved_memberships">${_('Unapproved')}</span> + <span class="approved" py:if="role.role_status == 'approved'">${_('Approved')}</span> + <span class="unapproved" py:if="role.role_status == 'unapproved'">${_('Unapproved')}</span> </dd> <py:if test="personal"> <dt>${_('Tools:')}</dt> }}} This patch doesn't actually address the root of the problem, so we will need to investigate further. The full traceback for the 500s was: {{{ cherrypy.msg INFO HTTP: Page handler: <bound method User.view of <fas.user.User object at 0xb4203c2c>> Traceback (most recent call last): File "/usr/lib/python2.6/site- packages/CherryPy-2.3.0-py2.6.egg/cherrypy/_cphttptools.py", line 121, in _run self.main() File "/usr/lib/python2.6/site- packages/CherryPy-2.3.0-py2.6.egg/cherrypy/_cphttptools.py", line 264, in main body = page_handler(*virtual_path, **self.params) File "<string>", line 3, in view File "/usr/lib/python2.6/site- packages/turbogears/identity/conditions.py", line 210, in require return fn(self, *args, **kwargs) File "<string>", line 3, in view File "/usr/lib/python2.6/site-packages/turbogears/controllers.py", line 195, in validate return errorhandling.run_with_errors(errors, func, *args, **kw) File "/usr/lib/python2.6/site-packages/turbogears/errorhandling.py", line 119, in run_with_errors return func(self, *args, **kw) File "<string>", line 3, in view File "/usr/lib/python2.6/site-packages/turbogears/controllers.py", line 360, in expose *args, **kw) File "<string>", line 5, in run_with_transaction File "/usr/lib/python2.6/site-packages/turbogears/database.py", line 411, in sa_rwt retval = func(*args, **kw) File "<string>", line 5, in _expose File "/usr/lib/python2.6/site-packages/turbogears/controllers.py", line 373, in <lambda> mapping, fragment, args, kw))) File "/usr/lib/python2.6/site-packages/turbogears/controllers.py", line 420, in _execute_func return _process_output(output, template, format, content_type, mapping, fragment) File "/usr/lib/python2.6/site-packages/turbogears/controllers.py", line 88, in _process_output fragment=fragment) File "/usr/lib/python2.6/site-packages/turbogears/view/base.py", line 159, in render return engine.render(**kw) File "/usr/lib/python2.6/site-packages/genshi/template/plugin.py", line 110, in render return self.transform(info, template).render(**kwargs) File "/usr/lib/python2.6/site-packages/genshi/core.py", line 179, in render return encode(generator, method=method, encoding=encoding, out=out) File "/usr/lib/python2.6/site-packages/genshi/output.py", line 60, in encode return _encode(u''.join(list(iterator))) File "/usr/lib/python2.6/site-packages/genshi/output.py", line 311, in __call__ for kind, data, pos in stream: File "/usr/lib/python2.6/site-packages/genshi/output.py", line 592, in __call__ for kind, data, pos in stream: File "/usr/lib/python2.6/site-packages/genshi/output.py", line 698, in __call__ for kind, data, pos in chain(stream, [(None, None, None)]): File "/usr/lib/python2.6/site-packages/genshi/output.py", line 532, in __call__ for ev in stream: File "/usr/lib/python2.6/site-packages/genshi/core.py", line 283, in _ensure for event in stream: File "/usr/lib/python2.6/site-packages/genshi/template/base.py", line 569, in _include for event in stream: File "/usr/lib/python2.6/site-packages/genshi/template/markup.py", line 279, in _match content = list(content) File "/usr/lib/python2.6/site-packages/genshi/template/base.py", line 569, in _include for event in stream: File "/usr/lib/python2.6/site-packages/genshi/template/markup.py", line 245, in _match for event in stream: File "/usr/lib/python2.6/site-packages/genshi/template/markup.py", line 234, in _strip event = stream.next() File "/usr/lib/python2.6/site-packages/genshi/template/base.py", line 543, in _exec for event in stream: File "/usr/lib/python2.6/site-packages/genshi/template/base.py", line 496, in _eval for kind, data, pos in stream: File "/usr/lib/python2.6/site-packages/genshi/template/base.py", line 558, in _flatten for event in self._flatten(substream, ctxt, **vars): File "/usr/lib/python2.6/site-packages/genshi/template/base.py", line 558, in _flatten for event in self._flatten(substream, ctxt, **vars): File "/usr/lib/python2.6/site-packages/genshi/template/base.py", line 557, in _flatten **vars) File "/usr/lib/python2.6/site-packages/genshi/template/base.py", line 272, in _apply_directives stream = directives[0](iter(stream), directives[1:], ctxt, **vars) File "/usr/lib/python2.6/site-packages/genshi/template/directives.py", line 411, in __call__ value = _eval_expr(self.expr, ctxt, **vars) File "/usr/lib/python2.6/site-packages/genshi/template/base.py", line 286, in _eval_expr retval = expr.evaluate(ctxt) File "/usr/lib/python2.6/site-packages/genshi/template/eval.py", line 180, in evaluate return eval(self.code, _globals, {'__data__': data}) File "/usr/lib/python2.6/site-packages/fas/templates/user/view.html", line 126, in <Expression u'role.group in person.approved_memberships'> <span class="approved" py:if="role.group in person.approved_memberships">${_('Approved')}</span> File "/usr/lib/python2.6/site- packages/sqlalchemy/ext/associationproxy.py", line 356, in __contains__ for member in self.col: File "/usr/lib/python2.6/site- packages/sqlalchemy/ext/associationproxy.py", line 300, in <lambda> col = property(lambda self: self.lazy_collection()) File "/usr/lib/python2.6/site- packages/sqlalchemy/ext/associationproxy.py", line 158, in lazy_collection "stale association proxy, parent object has gone out of " InvalidRequestError: stale association proxy, parent object has gone out of scope }}} -- Ticket URL: <https://fedorahosted.org/fedora-infrastructure/ticket/2366> Fedora Infrastructure <http://fedoraproject.org/wiki/Infrastructure> Fedora Infrastructure Project for Bugs, feature requests and access to our source code. -- websites mailing list websites@xxxxxxxxxxxxxxxxxxxxxxx https://admin.fedoraproject.org/mailman/listinfo/websites