In-Portal Issue Tracker

Welcome to the In-Portal Open Source CMS Issue Tracker! This is a central management / tracking tool for all types of tasks / issues / bugs for the In-Portal Project. Before reporting any issues, please make sure to read the Guide into Issue Tracker and How to Properly Test and Report Bugs!

Viewing Issue Advanced Details Jump to Notes ] Wiki ] View Simple ] Issue History ] Print ]
ID Category Type Reproducibility Date Submitted Last Update
0001048 [In-Portal CMS] Caching System bug report always 2011-05-04 15:41 2011-12-18 15:06
Reporter alex View Status public Project Name In-Portal CMS
Assigned To alex Developer
Priority normal Resolution open Platform
Status needs work   OS
  OS Version
ETA none Fixed in Version Product Version 5.1.2
  Target Version Icebox Product Build
Time Estimate2 hours total (2 hours remaining)
Summary 0001048: Using "Content Language Negotiation" along with Memcache cold start gives Fatal Error
Description I have "Content Language Negotiation" and memory caching enabled. When I restarted Memcached server and then visited Front-end with empty url, e.g. then redirect was made, since my "Accept-Language" header matched non-default language.

Because I have no cache, then kApplication::RewriteListeners array was empty and attempt to build redirect link resulted in fatal error listed below:

Notice: Undefined index: m in ...\core\kernel\application.php on line 1953

Fatal error: Method name must be a string in .../core/kernel/application.php on line 1955

I suggest following fixing approach:
1. place return ; after each kApplication::Redirect method call
2. when !$this->Application->InitDone and redirect attempt is made, then schedule redirect, but don't perform
3. when init finishes and there is a scheduled redirect, then perform it

Steps To Reproduce
Additional Information Here are the places, when redirects happen:
* Redirect on Session Expiration
* Redirect on non-rewritten url
* Redirect on language negotiation
* Redirect on missing item’s view permission
* Redirect on category import completion
* Redirect on module install finished
* Redirect on site domain mismatch
* Redirect on category cache updated finish
* Redirect on request event processed
* Redirect on CSV import complete
* Redirect on install complete
* Redirect on login required template
* Redirect on SSL mode mismatch
* Redirect on email queue processing finished
* Redirect on url ending mismatch
* Redirect on template compilation finished
Tags No tags attached.
Change Log Message Fixing fatal error on content language negotiation when memcached is used
Estimate Points 2
Attached Files

- Relationships Relation Graph ] Dependency Graph ]

-  Notes
User avatar (0004110)
alex (manager)
2011-11-01 08:41

This might not be the right way to fix this. We should move all code that does redirects during initialization into 1 place.

- Issue History
Date Modified Username Field Change
2011-12-18 15:06 Dmitry Target Version 5.2.0 => Icebox
2011-12-06 12:21 Dmitry Assigned To => alex
2011-12-06 12:21 Dmitry Status active => needs work
2011-11-01 08:41 alex Note Added: 0004110
2011-10-22 05:39 alex Estimate Points => 2
2011-09-26 04:52 alex Time Estimate Added 2
2011-09-23 20:55 Dmitry Target Version Icebox => 5.2.0
2011-05-04 15:41 alex New Issue
2011-05-04 15:41 alex Reference =>
2011-05-04 15:41 alex Change Log Message => Fixing fatal error on content language negotiation when memcached is used

Web Development by Intechnic
In-Portal Open Source CMS
In-Portal Open Source CMS
Copyright © 2000 - 2009 MantisBT Group

Powered by Mantis Bugtracker