Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bug: workflowoverview page causes memory overflow on big instances #170

Closed
PhMemmel opened this issue Jan 31, 2023 · 3 comments · Fixed by #171
Closed

Bug: workflowoverview page causes memory overflow on big instances #170

PhMemmel opened this issue Jan 31, 2023 · 3 comments · Fixed by #171

Comments

@PhMemmel
Copy link
Contributor

On big instances it is not possible anymore to configure any workflows, because trying to create a new one or editing an existing one will exceed the memory the request can take. This is likely to be caused by the fact that the check function of every configured trigger will be called for every single course just to show the number of courses which will be triggered in the workflowoverview page (see get_count_of_courses_to_trigger_for_workflow function).

I admit, it's a nice feature, but on instances with a lot of courses (for example ~400 000), this will exceed the memory stack and make the whole plugin unusable, because you cannot configure any workflow anymore. I believe this can also be an issue if triggers with pretty complex check_course functions are being used (including expensive SQL statements on big tables), so probably this not only can cause memory exhaustion, but can also lead to timeouts if the request takes too long to perform.

@NinaHerrmann
Copy link
Contributor

Hey @PhMemmel ,
I see your point do you have any suggestions for a fix?

@PhMemmel
Copy link
Contributor Author

Hi @NinaHerrmann,

I already provided a patch, but did not link it properly, sorry for that. It's now properly linked :-)

@NinaHerrmann
Copy link
Contributor

Sorry! I requested one of our student assistants to review it, but looks good!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants