Module: check_mk
Branch: master
Commit: d3b7be700c083542b9835afdd04d39539d5483c2
URL:
http://git.mathias-kettner.de/git/?p=check_mk.git;a=commit;h=d3b7be700c0835…
Author: Mathias Kettner <mk(a)mathias-kettner.de>
Date: Wed Apr 13 12:20:41 2016 +0200
3395 FIX Fix performance issue when many BI aggregations are active
If you have created 1000 or more aggregations and show a view with many
hosts or services than you could get massive performance and memory problems
in your Apache process. The reason is the computation of the BI icon in the
drop down menus of hosts and services. This was only done in order to
check the visibility of the menu itself. The menu is now always visible
and thus the computation is not longer neccessary.
---
.werks/3395 | 15 +++++++++++++++
ChangeLog | 1 +
web/plugins/icons/builtin.py | 4 ----
3 files changed, 16 insertions(+), 4 deletions(-)
diff --git a/.werks/3395 b/.werks/3395
new file mode 100644
index 0000000..9cfedc0
--- /dev/null
+++ b/.werks/3395
@@ -0,0 +1,15 @@
+Title: Fix performance issue when many BI aggregations are active
+Level: 2
+Component: multisite
+Class: fix
+Compatible: compat
+State: unknown
+Version: 1.2.9i1
+Date: 1460542721
+
+If you have created 1000 or more aggregations and show a view with many
+hosts or services than you could get massive performance and memory problems
+in your Apache process. The reason is the computation of the BI icon in the
+drop down menus of hosts and services. This was only done in order to
+check the visibility of the menu itself. The menu is now always visible
+and thus the computation is not longer neccessary.
diff --git a/ChangeLog b/ChangeLog
index d7c0289..43e5d06 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -192,6 +192,7 @@
* 3374 FIX: Fixed broken Logwatch page when a host has no log directory (yet)
* 3375 FIX: Fixed exception when adding a bookmark while having a list not named
my_bookmarks
* 3118 FIX: Availability view now takes daylight saving time into account
+ * 3395 FIX: Fix performance issue when many BI aggregations are active...
WATO:
diff --git a/web/plugins/icons/builtin.py b/web/plugins/icons/builtin.py
index 801d69a..29e84c7 100644
--- a/web/plugins/icons/builtin.py
+++ b/web/plugins/icons/builtin.py
@@ -84,10 +84,6 @@ def paint_action_menu(what, row, tags, host_custom_vars):
if html.has_var('_display_options'):
url_vars.append(('_display_options',
html.var('_display_options')))
- icons = get_icons(what, row, toplevel=False)
- if not icons:
- return # Don't paint the menu trigger when the menu would be empty
-
return html.render_popup_trigger(
html.render_icon('menu', _('Open the action menu'),
cssclass="iconbutton"),
'action_menu', 'action_menu', url_vars=url_vars)