Design issue Error whilst performing the upgrade

Deebs

Well-known member
When performing the upgrade on a large forum any users visiting the forums are presented with a blank page instead of the usual "Forums are down whilst performing an upgrade" message.

In the logs:

Code:
2011/10/05 20:17:36 [error] 982#0: *239070 FastCGI sent in stderr: "PHP Fatal error:  Call to undefined method XenForo_Template_Helper_Core::avatarHtml() in /data/websites/blah/library/XenForo/Template/Abstract.php(262) : eval()'d code on line 1913" while reading response header from upstream,

Upon completion the forum operates correctly.
 
While we could possibly deal with this specific case, it only occurs while the templates are waiting to be recompiled (but after the database changes are made). There are likely to be other cases like this in the future that we can't deal with.

This error can't be trapped because it's a fatal error. In general, this will have to just be a design issue.
 
Just for my own information, is this only an issue if you are actually calling a template to render? Just curious since some of the stuff I'm building uses XF for the underlying framework, but doesn't output a rendered template. That stuff is where the bulk of the traffic of my site comes from (hundreds of those requests per second).
 
This particular issue only happens if you have templates compiled for 1.0 with the 1.1 code running (ie, the upgrade is being done and the forums are closed only by XF's internal mechanisms). It can always be prevented by blocking access to the PHP at the web server level.
 
Ya, but what I was asking is would the error happen if the browser itself was coming in via a controller/route that does not output a template?

An example of what I mean is this image for example:

http://forums.digitalpoint.com/badge-1.png
badge-1.png


It's not an actual static image, rather it's an image being generated dynamically by a PHP script via mod_rewrite. Forgetting about the fact that the forum is shut down at the moment (that would be a different issue in itself), since the PHP script is never trying to render/output a template, would we see the same error?
 
Top Bottom