User tests: Successful: Unsuccessful:
Fix for a number of ancient bugs, such as http://joomlacode.org/gf/project/joomla/tracker/?action=TrackerItemEdit&tracker_id=8103&tracker_item_id=20506
Issue summary:
If caching was disabled but is now enabled, com_config tries to clean the cache of any old data before saving the new config. If it fails to clean the cache[for example, folder permission errors] then this attempt at cleaning the cache will cause com_config to abort before saving the new configuration.
Regardless of whether or not caching is enabled, com_config will attempt to for a clean on it's own cache[$this->cleanCache('_system',0), $this->cleanCache('_system',1) - since Joomla defaults are set to assume file caching this means if either the administrator/cache or the cache folders are not writable these calls fail and the new configuration will not be saved.
Simple fix is to move these 3 attempts to clean the cache from before writeConfigFile to afterwards to ensure the new configuration is saved. In addition, adding error suppression to these calls ensures that a misconfigured cache will not cause com_config to abort.
To reproduce:
On a working installation of Jooml:
Step 1: Enable file caching through system admin
Step 2: Load some pages to create some cache files in the cache folder
Step 3: Disable file caching through system admin, save[not save and close] so the screen remains open
Step 4: from the command line, go to the directory Joomla is installed in and make the cache files read only.:
chmod 600 cache
chmod 600 administrator\cache
Step 5: Enable the file caching again in the system admin[already open from 3], save
Result: Configuration will not save and instead cache error will be displayed
Apply patch for this code to your system
Repeat steps to reproduce problem. Configuration should save.
Labels |
Added:
?
?
|
Please alpha order the new string
As I am freezing core languages now for 3.2.2, I am committing the new lang string by itself.
Please take it off from PR.
Description | <p>Fix for a number of ancient bugs, such as <a href="http://joomlacode.org/gf/project/joomla/tracker/?action=TrackerItemEdit&tracker_id=8103&tracker_item_id=20506">http://joomlacode.org/gf/project/joomla/tracker/?action=TrackerItemEdit&tracker_id=8103&tracker_item_id=20506</a></p> <p>Issue summary:<br> If caching was disabled but is now enabled, com_config tries to clean the cache of any old data before saving the new config. If it fails to clean the cache[for example, folder permission errors] then this attempt at cleaning the cache will cause com_config to abort before saving the new configuration.</p> <p>Regardless of whether or not caching is enabled, com_config will attempt to for a clean on it's own cache[$this->cleanCache('<em>system',0), $this->cleanCache('</em>system',1) - since Joomla defaults are set to assume file caching this means if either the administrator/cache or the cache folders are not writable these calls fail and the new configuration will not be saved.</p> <p>Simple fix is to move these 3 attempts to clean the cache from before writeConfigFile to afterwards to ensure the new configuration is saved. In addition, adding error suppression to these calls ensures that a misconfigured cache will not cause com_config to abort.</p> <p>To reproduce:<br> On a working installation of Jooml:<br> Step 1: Enable file caching through system admin<br> Step 2: Load some pages to create some cache files in the cache folder<br> Step 3: Disable file caching through system admin, save[not save and close] so the screen remains open<br> Step 4: from the command line, go to the directory Joomla is installed in and make the cache files read only.:<br> chmod 600 cache<br> chmod 600 administrator\cache<br> Step 5: Enable the file caching again in the system admin[already open from 3], save</p> <p>Result: Configuration will not save and instead cache error will be displayed</p> <p>Apply patch for this code to your system<br> Repeat steps to reproduce problem. Configuration should save.</p> | ⇒ | <p>Fix for a number of ancient bugs, such as <a href="http://joomlacode.org/gf/project/joomla/tracker/?action=TrackerItemEdit&tracker_id=8103&tracker_item_id=20506">http://joomlacode.org/gf/project/joomla/tracker/?action=TrackerItemEdit&tracker_id=8103&tracker_item_id=20506</a></p> <p>Issue summary:<br> If caching was disabled but is now enabled, com_config tries to clean the cache of any old data before saving the new config. If it fails to clean the cache[for example, folder permission errors] then this attempt at cleaning the cache will cause com_config to abort before saving the new configuration.</p> <p>Regardless of whether or not caching is enabled, com_config will attempt to for a clean on it's own cache[$this->cleanCache('_system',0), $this->cleanCache('_system',1) - since Joomla defaults are set to assume file caching this means if either the administrator/cache or the cache folders are not writable these calls fail and the new configuration will not be saved.</p> <p>Simple fix is to move these 3 attempts to clean the cache from before writeConfigFile to afterwards to ensure the new configuration is saved. In addition, adding error suppression to these calls ensures that a misconfigured cache will not cause com_config to abort.</p> <p>To reproduce:<br> On a working installation of Jooml:<br> Step 1: Enable file caching through system admin<br> Step 2: Load some pages to create some cache files in the cache folder<br> Step 3: Disable file caching through system admin, save[not save and close] so the screen remains open<br> Step 4: from the command line, go to the directory Joomla is installed in and make the cache files read only.:<br> chmod 600 cache<br> chmod 600 administrator\cache<br> Step 5: Enable the file caching again in the system admin[already open from 3], save</p> <p>Result: Configuration will not save and instead cache error will be displayed</p> <p>Apply patch for this code to your system<br> Repeat steps to reproduce problem. Configuration should save.</p> |
Status | New | ⇒ | Closed |
Closed_Date | 0000-00-00 00:00:00 | ⇒ | 2014-03-29 20:04:23 |
Also shows up in xCache http://joomlacode.org/gf/project/joomla/tracker/?action=TrackerItemEdit&tracker_item_id=20476&start=0