Feature Wiki

Information about planned and released features

Tabs

Handle Export of Objects as Background Tasks

1 Initial Problem

In the recent weeks we had to do a lot of exports on our ILIAS platform. Many of them included many courses or entire categories with lots of big files and objects in them. Since the exports where done as a normal server request, the exports sometime exeeded all time limits and the users got a timeout message from our load balancer / webserver. The export process as such might have still been running in the "background" (for example if the load balancer ran into a timeout but the webserver worker did not, yet).

That means, that users need to know BEFORE exporting how big the export will be and long it might take (and make sure that the php execution time is long enough and there is no timeout in your loadbalancer etc...) That is notr feasible for "odinary" non-superadmin users and it makes exporting lagre containers a tedious task.

2 Conceptual Summary

We would like to make the ILIAS export a background task. When a user starts the export of an object, a background task schould be started.

The user shoud then be notified whether the export was a success or whether an error has occurred (the background tasks can do that, I think). After finishing the export, a user can the click on the repective background task and jump to the relevant context.

3 User Interface Modifications

3.1 List of Affected Views

  • the [Export] tab of any object

3.2 User Interface Details

{ For each of these views please list all user interface elements that should be modified, added or removed. Please provide the textual appearance of the UI elements and their interactive behaviour. }

3.3 New User Interface Concepts

{ If the proposal introduces any completely new user interface elements, you might consult UI Kitchen Sink in order to find the necessary information to propose new UI-Concepts. Note that any maintainer might gladly assist you with this. }

3.4 Accessibility Implications

{ If the proposal contains potential accessibility issues that are neither covered by existing UI components nor clarified by guidelines, please list them here. For every potential issue please either propose a solution or write down a short risk assessment about potential fallout if there would be no solution for the issue. }

4 Technical Information

{ The maintainer has to provide necessary technical information, e.g. dependencies on other ILIAS components, necessary modifications in general services/architecture, potential security or performance issues. }

5 Privacy

{ Please list all personal data that will need to be stored or processed to implement this feature. For each date give a short explanation why it is necessary to use that date. }

6 Security

{ Does the feature include any special security relevant changes, e.g. the introducion of new endpoints or other new possible attack vectors. If yes, please explain these implications and include a commitment to deliver a written security concept as part of the feature development. This concept will need an additional approvement by the JourFixe. }

7 Contact

8 Funding

If you are interest in funding this feature, please add your name and institution to this list.

9 Discussion

10 Implementation

{ The maintainer has to give a description of the final implementation and add screenshots if possible. }

Test Cases

Test cases completed at {date} by {user}

  • {Test case number linked to Testrail} : {test case title}

Approval

Approved at {date} by {user}.

Last edited: 31. May 2022, 18:20, Glaubitz, Marko [mglaubitz]