diff --git a/ChangeLog b/ChangeLog index 1e074d43a..4e07765de 100755 --- a/ChangeLog +++ b/ChangeLog @@ -9,6 +9,8 @@ $Source$ * Documentation.html, libraries/common.lib.php, libraries/config.default.php, libraries/database_interface.lib.php: Add support for hiding databases (RFE #1372865). + * Documentation.html, export.php, import.php, + libraries/config.default.php: Configurable memory limit (RFE #1373904). 2005-12-14 Sebastian Mendel * libraries/Config.class.php: diff --git a/Documentation.html b/Documentation.html index 02d8194c8..256df240d 100755 --- a/Documentation.html +++ b/Documentation.html @@ -66,7 +66,7 @@
  • PHP
    diff --git a/export.php b/export.php index 6c48e006e..0bc0ad0de 100644 --- a/export.php +++ b/export.php @@ -35,6 +35,9 @@ if ($export_type == 'server') { * Increase time limit for script execution and initializes some variables */ @set_time_limit($cfg['ExecTimeLimit']); +if (!empty($cfg['MemoryLimit'])) { + @ini_set('memory_limit', $cfg['MemoryLimit']); +} // Start with empty buffer $dump_buffer = ''; diff --git a/import.php b/import.php index 11a94f2f4..ad9a86ad9 100644 --- a/import.php +++ b/import.php @@ -91,6 +91,10 @@ if (isset($db)) { } @set_time_limit($cfg['ExecTimeLimit']); +if (!empty($cfg['MemoryLimit'])) { + @ini_set('memory_limit', $cfg['MemoryLimit']); +} + $timestamp = time(); if (isset($allow_interrupt)) { $maximum_time = ini_get('max_execution_time'); diff --git a/libraries/config.default.php b/libraries/config.default.php index c7a9976f3..17cb6ae27 100644 --- a/libraries/config.default.php +++ b/libraries/config.default.php @@ -126,6 +126,7 @@ $cfg['OBGzip'] = 'auto'; // use GZIP output buffering if possib $cfg['PersistentConnections'] = FALSE; // use persistent connections to MySQL database $cfg['ForceSSL'] = FALSE; // whether to force using https $cfg['ExecTimeLimit'] = 300; // maximum execution time in seconds (0 for no limit) +$cfg['MemoryLimit'] = 0; // maximum alocated bytes (0 for no limit) $cfg['SkipLockedTables'] = FALSE; // mark used tables, make possible to show // locked tables (since MySQL 3.23.30) $cfg['ShowSQL'] = TRUE; // show SQL queries as run