teammates icon indicating copy to clipboard operation
teammates copied to clipboard

Enhance feedback response result endpoint

Open moziliar opened this issue 3 years ago • 0 comments

This ticket is created to track the status of the following issue:

Instructor results page requires all responses from all students in a course in a feedback session to be displayed. As the course/feedback session size grows, this becomes a problem when loading the responses as it can cause either out-of-memory (OOM) error (all responses need to be loaded in the back-end before transferred to front-end) or timeout (due to the large amount of entities that need to be read).

There are several issues to tackle in this issue:

~1. Backend fine-grained response fetch to prevent OOM or server timeout [TODO]~ 2. Frontend response result loading optimization, related to above [TODO] 3. Frontend CSV download improvement via pagination [IN PROGRESS] 4. Workflow cost analysis [TODO]

Issue 1 and 2 should have a finer grained fetching logic of the student response. We could employ lazy loading (given that the instructor cannot view all the results at once in large course setting) with more smaller api calls. This is open for discussion.

Issue 3 could capitalize on solution to 1 and 2 while staying paginated to smoothen backend memory pressure.

Issue 4 is the overall cost calculation for the improvement.

moziliar avatar Mar 05 '21 13:03 moziliar