Skip to content

Commit

Permalink
MDL-22478 Allow alternative location of strings disk cache
Browse files Browse the repository at this point in the history
Administrators can now specify $CFG->langcacheroot in their config.php for
alternative location of strings disk cache. If the alternative location is
not set, Moodle uses default $CFG->dataroot/cache/lang
  • Loading branch information
mudrd8mz committed Mar 11, 2011
1 parent c096042 commit c198593
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 1 deletion.
12 changes: 12 additions & 0 deletions config-dist.php
Expand Up @@ -345,6 +345,18 @@
//
// $CFG->themedir = '/location/of/extra/themes';
//
// If $CFG->langstringcache is enabled (which should always be in production
// environment), Moodle keeps aggregated strings in its own internal format
// optimised for performance. By default, this on-disk cache is created in
// $CFG->dataroot/cache/lang. In cluster environment, you may wish to specify
// an alternative location of this cache so that each web server in the cluster
// uses its own local cache and does not need to access the shared dataroot.
// Make sure that the web server process has write permission to this location
// and that it has permission to remove the folder, too (so that the cache can
// be pruned).
//
// $CFG->langcacheroot = '/var/www/moodle/htdocs/altcache/lang';
//
// Site default language can be set via standard administration interface. If you
// want to have initial error messages for eventual database connection problems
// localized too, you have to set your language code here.
Expand Down
7 changes: 6 additions & 1 deletion lib/moodlelib.php
Expand Up @@ -5484,12 +5484,17 @@ function get_string_manager($forcereload=false) {
}
if ($singleton === null) {
if (empty($CFG->early_install_lang)) {
if (empty($CFG->langcacheroot)) {
$langcacheroot = $CFG->dataroot . '/cache/lang';
} else {
$langcacheroot = $CFG->langcacheroot;
}
if (empty($CFG->langlist)) {
$translist = array();
} else {
$translist = explode(',', $CFG->langlist);
}
$singleton = new core_string_manager($CFG->langotherroot, $CFG->langlocalroot, "$CFG->dataroot/cache/lang", !empty($CFG->langstringcache), $translist);
$singleton = new core_string_manager($CFG->langotherroot, $CFG->langlocalroot, $langcacheroot, !empty($CFG->langstringcache), $translist);
} else {
$singleton = new install_string_manager();
}
Expand Down

0 comments on commit c198593

Please sign in to comment.