mahara-contributors team mailing list archive
-
mahara-contributors team
-
Mailing list archive
-
Message #39295
[Bug 1636090] A change has been merged
Reviewed: https://reviews.mahara.org/7205
Committed: https://git.mahara.org/mahara/mahara/commit/bd5e7de413f3c6062891bc583eefcc25e2dd7fa0
Submitter: Robert Lyon (robertl@xxxxxxxxxxxxxxx)
Branch: 16.10_STABLE
commit bd5e7de413f3c6062891bc583eefcc25e2dd7fa0
Author: Ghada El-Zoghbi <ghada@xxxxxxxxxxxxxxx>
Date: Mon Oct 24 17:59:09 2016 +1100
Bug #1636090: Increase execution time during fix for users during
upgrade.
Large Maharas with thousands of users run into max execution
time errors.
behatnotneeded
Change-Id: Ie9d5e9d1edb6cd3682afb93e435ebb2d01be355e
--
You received this bug notification because you are a member of Mahara
Contributors, which is subscribed to Mahara.
Matching subscriptions: Subscription for all Mahara Contributors -- please ask on #mahara-dev or mahara.org forum before editing or unsubscribing it!
https://bugs.launchpad.net/bugs/1636090
Title:
Execution timeout during 16.10 upgrade when fixing broken user data
Status in Mahara:
Fix Committed
Status in Mahara 16.10 series:
Fix Committed
Status in Mahara 17.04 series:
Fix Committed
Bug description:
Mahara: 16.10.0
DB: Postgres
OS: Linux
Browser: FF
While upgrading from 16.04 to 16.10, we are getting the following
error:
PHP Fatal error: Maximum execution time of 30 seconds exceeded in /var/www/clients/mahara/htdocs/lib/mahara.php on line 1569
PHP Stack trace:
PHP 1. {main}() /var/www/clients/mahara/htdocs/admin/cli/upgrade.php:0
PHP 2. upgrade_mahara() /var/www/clients/mahara/htdocs/admin/cli/upgrade.php:53
PHP 3. upgrade_core() /var/www/clients/mahara/htdocs/lib/mahara.php:265
PHP 4. xmldb_core_upgrade() /var/www/clients/mahara/htdocs/lib/upgrade.php:347
PHP 5. set_profile_field() /var/www/clients/mahara/htdocs/lib/db/upgrade.php:4733
PHP 6. safe_require() /var/www/clients/mahara/htdocs/lib/user.php:536
We have over 45K users in the DB and it's timing out.
I've fixed it by adding the following immediately after 'if ($oldversion < 2016090206) {':
$cur_max_execution_time = @ini_get('max_execution_time');
ini_set('max_execution_time', 0);
And, at the end of the if statement (to set the time back to the original timeout):
ini_set('max_execution_time', $cur_max_execution_time);
I didn't use raise_time_limit(0) as it didn't seem to make a
difference. It still timeout after 30 seconds.
Thanks,
Ghada
To manage notifications about this bug go to:
https://bugs.launchpad.net/mahara/+bug/1636090/+subscriptions
References