mirror of
https://github.com/moodle/moodle.git
synced 2025-08-04 16:36:37 +02:00
Merged from MOODLE_14_STABLE: Fixing handling of empty memory_limit for PHP without memory_limit (mostly Windows binaries)
This commit is contained in:
parent
429a24b7fc
commit
c95aa089a8
2 changed files with 51 additions and 2 deletions
39
auth/ldap/auth_ldap_sync_users.php
Executable file
39
auth/ldap/auth_ldap_sync_users.php
Executable file
|
@ -0,0 +1,39 @@
|
||||||
|
<?php
|
||||||
|
/** auth_ldap_sync_users.php
|
||||||
|
*
|
||||||
|
* This script is meant to be called from a cronjob to sync moodle with the LDAP
|
||||||
|
* backend in those setups where the LDAP backend acts as 'master'.
|
||||||
|
*
|
||||||
|
* Recommended cron entry:
|
||||||
|
* # 5 minutes past 4am
|
||||||
|
* 5 4 * * * /usr/bin/php -c /etc/php4/cli/php.ini /var/www/moodle/auth/ldap/auth_ldap_sync_users.php
|
||||||
|
*
|
||||||
|
* Notes:
|
||||||
|
* - If you have a large number of users, you may want to raise the memory limits
|
||||||
|
* by passing -d momory_limit=256M
|
||||||
|
* - For debugging & better logging, you are encouraged to use in the command line:
|
||||||
|
* -d log_errors=1 -d error_reporting=E_ALL -d display_errors=0 -d html_errors=0
|
||||||
|
*
|
||||||
|
* Performance notes:
|
||||||
|
* We have optimized it as best as we could for Postgres and mySQL, with 27K students
|
||||||
|
* we have seen this take 10 minutes.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
if(!empty($_SERVER['GATEWAY_INTERFACE'])){
|
||||||
|
error_log("should not be called from apache!");
|
||||||
|
exit;
|
||||||
|
}
|
||||||
|
|
||||||
|
require_once(dirname(dirname(dirname(__FILE__))).'/config.php'); // global moodle config file.
|
||||||
|
|
||||||
|
require_once($CFG->dirroot.'/course/lib.php');
|
||||||
|
require_once($CFG->dirroot.'/lib/blocklib.php');
|
||||||
|
require_once($CFG->dirroot.'/mod/resource/lib.php');
|
||||||
|
require_once($CFG->dirroot.'/auth/ldap/lib.php');
|
||||||
|
require_once($CFG->dirroot.'/mod/forum/lib.php');
|
||||||
|
$CFG->debug=10;
|
||||||
|
auth_sync_users(1000, true );
|
||||||
|
|
||||||
|
?>
|
|
@ -3254,9 +3254,19 @@ function raise_memory_limit ($newlimit) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
$cur = return_bytes(@ini_get('memory_limit'));
|
$cur = @ini_get('memory_limit');
|
||||||
$new = return_bytes($newlimit);
|
if (empty($cur)) {
|
||||||
|
// if php is compiled without --enable-memory-limits
|
||||||
|
// apparently memory_limit is set to ''
|
||||||
|
$cur=0;
|
||||||
|
} else {
|
||||||
|
if ($cur == -1){
|
||||||
|
return true; // unlimited mem!
|
||||||
|
}
|
||||||
|
$cur = return_bytes($cur);
|
||||||
|
}
|
||||||
|
|
||||||
|
$new = return_bytes($newlimit);
|
||||||
if ($new > $cur) {
|
if ($new > $cur) {
|
||||||
ini_set('memory_limit', $newlimit);
|
ini_set('memory_limit', $newlimit);
|
||||||
return true;
|
return true;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue