Details
-
Type:
Improvement
-
Status: Closed
-
Priority:
Major
-
Resolution: Fixed
-
Affects Version/s: 2.6
-
Fix Version/s: 2.6
-
Component/s: Files API
-
Labels:
-
Testing Instructions:
-
Affected Branches:MOODLE_26_STABLE
-
Fixed Branches:MOODLE_26_STABLE
-
Pull from Repository:
-
Pull Master Branch:
MDL-41151-master -
Pull Master Diff URL:
Description
Packing and unpacking zip files (especially for backups) can take a long time. This causes serious problems such as timeouts. (See MDL-41147 and MDL-41087.)
The solution is to indicate progress during the zip/unzip process. During the unzip process, we can generally indicate numeric progress without slowing it down. During the zip process it is only possible to indicate 'indeterminate' progress, i.e. call a function once per file.
This will be sufficient to prevent system timeouts by resetting PHP time limit and outputting something to stop front-end servers from timing out and inform users that the operation is ongoing.
Implementing this requires a change to the file API.