On Sep 7, 2010, at 4:49 PM, Chris McDonough wrote:
> This is fixed on the BFG trunk and the fix will be released in r.bfg
> 1.3a12.
>
> --
> (Ariadne Prod) dictionary changed size during iteration
> https://bugs.launchpad.net/bugs/621364
> You received this bug notification because you are subscribed to KARL3.
>
> Status in KARL3: Won't Fix
>
> Bug description:
> reported in error monitor on prod
> This happened right after update
> Could this just be a glitch of someone hitting site exact time site mod_wsgi was restarting the site?
>
> ENTRY
> Fri Aug 20 15:32:44 2010
> Exception when processing https://portal.ariadne-network.eu/login.html?came_from=https%3A%2F%2Fportal.ariadne-network.eu%2F
> Traceback (most recent call last):
> File "/opt/karl/ariadne/3.3.1-0/src/karl/karl/errorlog.py", line 15, in middleware
> return app(environ, start_response)
> File "/opt/karl/ariadne/3.3.1-0/eggs/repoze.retry-0.9.4-py2.5.egg/repoze/retry/__init__.py", line 88, in __call__
> app_iter = self.application(environ, replace_start_response)
> File "/opt/karl/ariadne/3.3.1-0/eggs/repoze.tm2-1.0a5-py2.5.egg/repoze/tm/__init__.py", line 23, in __call__
> result = self.application(environ, save_status_and_headers)
> File "/opt/karl/ariadne/3.3.1-0/eggs/Paste-1.7.2-py2.5.egg/paste/registry.py", line 350, in __call__
> app_iter = self.application(environ, start_response)
> File "/opt/karl/ariadne/3.3.1-0/eggs/repoze.who-1.0.15-py2.5.egg/repoze/who/middleware.py", line 107, in __call__
> app_iter = app(environ, wrapper.wrap_start_response)
> File "/opt/karl/ariadne/3.3.1-0/eggs/repoze.browserid-0.3-py2.5.egg/repoze/browserid/middleware.py", line 134, in __call__
> app_iter = self.app(environ, wrapper.wrap_start_response)
> File "/opt/karl/ariadne/3.3.1-0/eggs/repoze.bfg-1.2-py2.5.egg/repoze/bfg/router.py", line 130, in __call__
> response = view_callable(context, request)
> File "/opt/karl/ariadne/3.3.1-0/src/karl/karl/views/login.py", line 41, in login_view
> app_url=request.application_url,
> File "/opt/karl/ariadne/3.3.1-0/eggs/repoze.bfg-1.2-py2.5.egg/repoze/bfg/chameleon_zpt.py", line 84, in render_template_to_response
> result = renderer(kw, {})
> File "/opt/karl/ariadne/3.3.1-0/eggs/repoze.bfg-1.2-py2.5.egg/repoze/bfg/chameleon_zpt.py", line 46, in __call__
> result = self.template(**system)
> File "/opt/karl/ariadne/3.3.1-0/eggs/Chameleon-1.1.1-py2.5.egg/chameleon/core/template.py", line 83, in __call__
> return self.render(**kwargs)
> File "/opt/karl/ariadne/3.3.1-0/eggs/Chameleon-1.1.1-py2.5.egg/chameleon/core/template.py", line 335, in render
> return super(TemplateFile, self).render(**kwargs)
> File "/opt/karl/ariadne/3.3.1-0/eggs/Chameleon-1.1.1-py2.5.egg/chameleon/zpt/template.py", line 18, in render
> return super(PageTemplate, self).render(**kwargs)
> File "/opt/karl/ariadne/3.3.1-0/eggs/Chameleon-1.1.1-py2.5.egg/chameleon/core/template.py", line 188, in render
> return self.cook_and_render(kwargs, utils.emptydict, None, True)
> File "/opt/karl/ariadne/3.3.1-0/eggs/Chameleon-1.1.1-py2.5.egg/chameleon/core/template.py", line 315, in cook_and_render
> args, slots, macro, global_scope)
> File "/opt/karl/ariadne/3.3.1-0/eggs/Chameleon-1.1.1-py2.5.egg/chameleon/core/template.py", line 180, in cook_and_render
> return func(econtext, rcontext)
> File "<string>", line 160, in render
> File "/opt/karl/ariadne/3.3.1-0/eggs/Chameleon-1.1.1-py2.5.egg/chameleon/core/template.py", line 379, in render
> return self.render(name, slots=slots, parameters=kwargs)
> File "/opt/karl/ariadne/3.3.1-0/eggs/Chameleon-1.1.1-py2.5.egg/chameleon/zpt/template.py", line 23, in render_macro
> macro, global_scope=global_scope, slots=slots, parameters=parameters)
> File "/opt/karl/ariadne/3.3.1-0/eggs/Chameleon-1.1.1-py2.5.egg/chameleon/core/template.py", line 198, in render_macro
> return self.cook_and_render(parameters, slots, macro, global_scope)
> File "/opt/karl/ariadne/3.3.1-0/eggs/Chameleon-1.1.1-py2.5.egg/chameleon/core/template.py", line 315, in cook_and_render
> args, slots, macro, global_scope)
> File "/opt/karl/ariadne/3.3.1-0/eggs/Chameleon-1.1.1-py2.5.egg/chameleon/core/template.py", line 180, in cook_and_render
> return func(econtext, rcontext)
> File "<string>", line 27, in render
> File "/opt/karl/ariadne/3.3.1-0/eggs/Chameleon-1.1.1-py2.5.egg/chameleon/core/codegen.py", line 29, in lookup_attr
> return getattr(obj, key)
> File "/opt/karl/ariadne/3.3.1-0/src/karl/karl/views/api.py", line 109, in snippets
> self._snippets = get_template('templates/snippets.pt')
> File "/opt/karl/ariadne/3.3.1-0/eggs/repoze.bfg-1.2-py2.5.egg/repoze/bfg/chameleon_zpt.py", line 62, in get_template
> renderer = renderer_factory(path)
> File "/opt/karl/ariadne/3.3.1-0/eggs/repoze.bfg-1.2-py2.5.egg/repoze/bfg/chameleon_zpt.py", line 25, in renderer_factory
> return template_renderer_factory(path, ZPTTemplateRenderer)
> File "/opt/karl/ariadne/3.3.1-0/eggs/repoze.bfg-1.2-py2.5.egg/repoze/bfg/renderers.py", line 63, in template_renderer_factory
> reg.registerUtility(renderer, ITemplateRenderer, name=spec)
> File "/opt/karl/ariadne/3.3.1-0/eggs/zope.component-3.6.0-py2.5.egg/zope/component/registry.py", line 99, in registerUtility
> for ((p, _), data) in self._utility_registrations.iteritems():
> RuntimeError: dictionary changed size during iteration
>
>
Nice, thanks!
--Paul
On Sep 7, 2010, at 4:49 PM, Chris McDonough wrote:
> This is fixed on the BFG trunk and the fix will be released in r.bfg /bugs.launchpad .net/bugs/ 621364 /portal. ariadne- network. eu/login. html?came_ from=https% 3A%2F%2Fportal. ariadne- network. eu%2F ariadne/ 3.3.1-0/ src/karl/ karl/errorlog. py", line 15, in middleware ariadne/ 3.3.1-0/ eggs/repoze. retry-0. 9.4-py2. 5.egg/repoze/ retry/_ _init__ .py", line 88, in __call__ n(environ, replace_ start_response) ariadne/ 3.3.1-0/ eggs/repoze. tm2-1.0a5- py2.5.egg/ repoze/ tm/__init_ _.py", line 23, in __call__ n(environ, save_status_ and_headers) ariadne/ 3.3.1-0/ eggs/Paste- 1.7.2-py2. 5.egg/paste/ registry. py", line 350, in __call__ n(environ, start_response) ariadne/ 3.3.1-0/ eggs/repoze. who-1.0. 15-py2. 5.egg/repoze/ who/middleware. py", line 107, in __call__ wrap_start_ response) ariadne/ 3.3.1-0/ eggs/repoze. browserid- 0.3-py2. 5.egg/repoze/ browserid/ middleware. py", line 134, in __call__ wrap_start_ response) ariadne/ 3.3.1-0/ eggs/repoze. bfg-1.2- py2.5.egg/ repoze/ bfg/router. py", line 130, in __call__ context, request) ariadne/ 3.3.1-0/ src/karl/ karl/views/ login.py" , line 41, in login_view request. application_ url, ariadne/ 3.3.1-0/ eggs/repoze. bfg-1.2- py2.5.egg/ repoze/ bfg/chameleon_ zpt.py" , line 84, in render_ template_ to_response ariadne/ 3.3.1-0/ eggs/repoze. bfg-1.2- py2.5.egg/ repoze/ bfg/chameleon_ zpt.py" , line 46, in __call__ **system) ariadne/ 3.3.1-0/ eggs/Chameleon- 1.1.1-py2. 5.egg/chameleon /core/template. py", line 83, in __call__ **kwargs) ariadne/ 3.3.1-0/ eggs/Chameleon- 1.1.1-py2. 5.egg/chameleon /core/template. py", line 335, in render **kwargs) ariadne/ 3.3.1-0/ eggs/Chameleon- 1.1.1-py2. 5.egg/chameleon /zpt/template. py", line 18, in render **kwargs) ariadne/ 3.3.1-0/ eggs/Chameleon- 1.1.1-py2. 5.egg/chameleon /core/template. py", line 188, in render and_render( kwargs, utils.emptydict, None, True) ariadne/ 3.3.1-0/ eggs/Chameleon- 1.1.1-py2. 5.egg/chameleon /core/template. py", line 315, in cook_and_render ariadne/ 3.3.1-0/ eggs/Chameleon- 1.1.1-py2. 5.egg/chameleon /core/template. py", line 180, in cook_and_render ariadne/ 3.3.1-0/ eggs/Chameleon- 1.1.1-py2. 5.egg/chameleon /core/template. py", line 379, in render ariadne/ 3.3.1-0/ eggs/Chameleon- 1.1.1-py2. 5.egg/chameleon /zpt/template. py", line 23, in render_macro scope=global_ scope, slots=slots, parameters= parameters) ariadne/ 3.3.1-0/ eggs/Chameleon- 1.1.1-py2. 5.egg/chameleon /core/template. py", line 198, in render_macro and_render( parameters, slots, macro, global_scope) ariadne/ 3.3.1-0/ eggs/Chameleon- 1.1.1-py2. 5.egg/chameleon /core/template. py", line 315, in cook_and_render ariadne/ 3.3.1-0/ eggs/Chameleon- 1.1.1-py2. 5.egg/chameleon /core/template. py", line 180, in cook_and_render ariadne/ 3.3.1-0/ eggs/Chameleon- 1.1.1-py2. 5.egg/chameleon /core/codegen. py", line 29, in lookup_attr ariadne/ 3.3.1-0/ src/karl/ karl/views/ api.py" , line 109, in snippets 'templates/ snippets. pt') ariadne/ 3.3.1-0/ eggs/repoze. bfg-1.2- py2.5.egg/ repoze/ bfg/chameleon_ zpt.py" , line 62, in get_template factory( path) ariadne/ 3.3.1-0/ eggs/repoze. bfg-1.2- py2.5.egg/ repoze/ bfg/chameleon_ zpt.py" , line 25, in renderer_factory renderer_ factory( path, ZPTTemplateRend erer) ariadne/ 3.3.1-0/ eggs/repoze. bfg-1.2- py2.5.egg/ repoze/ bfg/renderers. py", line 63, in template_ renderer_ factory lity(renderer, ITemplateRenderer, name=spec) ariadne/ 3.3.1-0/ eggs/zope. component- 3.6.0-py2. 5.egg/zope/ component/ registry. py", line 99, in registerUtility registrations. iteritems( ):
> 1.3a12.
>
> --
> (Ariadne Prod) dictionary changed size during iteration
> https:/
> You received this bug notification because you are subscribed to KARL3.
>
> Status in KARL3: Won't Fix
>
> Bug description:
> reported in error monitor on prod
> This happened right after update
> Could this just be a glitch of someone hitting site exact time site mod_wsgi was restarting the site?
>
> ENTRY
> Fri Aug 20 15:32:44 2010
> Exception when processing https:/
> Traceback (most recent call last):
> File "/opt/karl/
> return app(environ, start_response)
> File "/opt/karl/
> app_iter = self.applicatio
> File "/opt/karl/
> result = self.applicatio
> File "/opt/karl/
> app_iter = self.applicatio
> File "/opt/karl/
> app_iter = app(environ, wrapper.
> File "/opt/karl/
> app_iter = self.app(environ, wrapper.
> File "/opt/karl/
> response = view_callable(
> File "/opt/karl/
> app_url=
> File "/opt/karl/
> result = renderer(kw, {})
> File "/opt/karl/
> result = self.template(
> File "/opt/karl/
> return self.render(
> File "/opt/karl/
> return super(TemplateFile, self).render(
> File "/opt/karl/
> return super(PageTemplate, self).render(
> File "/opt/karl/
> return self.cook_
> File "/opt/karl/
> args, slots, macro, global_scope)
> File "/opt/karl/
> return func(econtext, rcontext)
> File "<string>", line 160, in render
> File "/opt/karl/
> return self.render(name, slots=slots, parameters=kwargs)
> File "/opt/karl/
> macro, global_
> File "/opt/karl/
> return self.cook_
> File "/opt/karl/
> args, slots, macro, global_scope)
> File "/opt/karl/
> return func(econtext, rcontext)
> File "<string>", line 27, in render
> File "/opt/karl/
> return getattr(obj, key)
> File "/opt/karl/
> self._snippets = get_template(
> File "/opt/karl/
> renderer = renderer_
> File "/opt/karl/
> return template_
> File "/opt/karl/
> reg.registerUti
> File "/opt/karl/
> for ((p, _), data) in self._utility_
> RuntimeError: dictionary changed size during iteration
>
>