Module: check_mk
Branch: master
Commit: ab8e174860a687fc6be73b48f5d53b6ed7b09b7f
URL:
http://git.mathias-kettner.de/git/?p=check_mk.git;a=commit;h=ab8e174860a687…
Author: Lars Michelsen <lm(a)mathias-kettner.de>
Date: Tue Nov 17 17:13:27 2015 +0100
#2769 Verifying that the Check_MK GUI is not used with Apache threaded MPM (e.g. worker)
---
.werks/2769 | 9 +++++++++
ChangeLog | 1 +
web/htdocs/html_mod_python.py | 12 +++++++++++-
3 files changed, 21 insertions(+), 1 deletion(-)
diff --git a/.werks/2769 b/.werks/2769
new file mode 100644
index 0000000..0882261
--- /dev/null
+++ b/.werks/2769
@@ -0,0 +1,9 @@
+Title: Verifying that the Check_MK GUI is not used with Apache threaded MPM (e.g.
worker)
+Level: 1
+Component: multisite
+Compatible: compat
+Version: 1.2.7i4
+Date: 1447776771
+Class: feature
+
+
diff --git a/ChangeLog b/ChangeLog
index bc56a72..87617b0 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -91,6 +91,7 @@
* 2684 Added icons for downloading agent data / walks of hosts...
* 2713 New bookmark lists, strucutrable and shareable between users...
* 2768 SHowing number of unacknowledged incompatible changes in sidebar header
+ * 2769 Verifying that the Check_MK GUI is not used with Apache threaded MPM (e.g.
worker)
* 2680 FIX: LDAP: Fixed exception when syncing groups using configurations from
previous versions...
* 2435 FIX: New graphing system: fixed broken graphs for iSCSI checks...
* 2696 FIX: Fixed broken perfometer for update checks
diff --git a/web/htdocs/html_mod_python.py b/web/htdocs/html_mod_python.py
index d2ae6ca..b2a8ccc 100644
--- a/web/htdocs/html_mod_python.py
+++ b/web/htdocs/html_mod_python.py
@@ -25,7 +25,7 @@
# Boston, MA 02110-1301 USA.
from mod_python import Cookie, util, apache
-from lib import make_utf8
+from lib import make_utf8, MKGeneralException
import htmllib
import os, time, config, weblib, re
import defaults
@@ -66,10 +66,20 @@ class html_mod_python(htmllib.html):
self.set_output_format(self.var("output_format", "html"))
+ def verify_not_using_threaded_mpm(self):
+ if apache.mpm_query(apache.AP_MPMQ_IS_THREADED) != 0:
+ raise MKGeneralException(
+ _("You are trying to Check_MK together with a threaded Apache
multiprocessing module (MPM). "
+ "Check_MK is only working with the prefork module. Please change
the MPM module to make "
+ "Check_MK work."))
+
+
# Initializes the operation mode of the html() object. This is called
# after the ChecK_MK GUI configuration has been loaded, so it is safe
# to rely on the config.
def init_modes(self):
+ self.verify_not_using_threaded_mpm()
+
self.init_screenshot_mode()
self.init_debug_mode()
self.set_buffering(config.buffered_http_stream)