Ilogeek/redmine_issue_dynamic_edit

_CONF_CHECK_ISSUE_UPDATE_CONFLICT feature leads to heavy load with multiple tabs opened

paulbutenko opened this issue · 2 comments

When user opens lot of tabs with issues, each of them does request every 5 sec
https://github.com/Ilogeek/redmine_issue_dynamic_edit/blob/master/assets/javascripts/issue_dynamic_edit.js#L264
even if tab is inactive.

for multiple users with multiple tabs these requests does lot of pressure to redmine.

might be improved by disabling request when tab is inactive.

Unfortunately the update intevall interferes with complex issues: Tested with an issue that has more than 250 comments. This issue has a loading time of about 12 seconds. Within the loading time the plugin send another GET request to the webserver and the loop continues. This leads to a lot of application server processes that consume all CPU ressources. The Redmine instance is pratically unusable for the time a tab with this ticket is still open.

Hello @paulbutenko and @kidhab

Thank you for your feedback and solution for the check mechanism issue.
I tried to fix this with 2 improvements :

  • Using Redmine REST API to get last issue update date instead of loading the whole page
  • Disabling check when tab is not focused

Feel free to come back to me if you have any problem with this update

If you find the plugin helpful, take a minute to star it on Github and rate it 5 stars on http://www.redmine.org/plugins/redmine_issue_dynamic_edit 👍