[dev] performance hit caused by nag and mnemo

Michael Menge michael.menge at zdv.uni-tuebingen.de
Fri Sep 22 03:14:30 PDT 2006


Hi,

we are using horde-3.1.1, imp-h3-4.1, mnemo-h3-2.1 and nag-h3-2.1 and  
some other modules. About 6000 Users and up to 250 Current Users. With  
mnemo and nag every action takes 30-60 sec. Without mnemo anf nag less  
than 5 sec.

We found out that every action calls 2 sql komplicated statements for  
mnemo and 2 for nag, even if the action has nothing to do with mnemo  
or nag.

I don't understand what nag and mnemo want Query from the DB, also i  
dont understand why this quere has to be done on every time I refrey  
my INBOX or read a eMail.

At the moment we hat to deactivate nag and mnemo because of the  
performance problem, but would like to have these modules in production.

Has someone an idea what nag and mnemo are doing and how to reduce the queries

Regards,

Michael Menge



Some of the SQL Queries form the Horde log
=================================
Sep 20 18:30:03 HORDE [debug] [nag] SQL Query by  
DataTree_sql::getByAttributes(): SELECT c.datatree_id, c.datatree_name  
FRO
M horde_datatree c LEFT JOIN horde_datatree_attributes a1 ON  
a1.datatree_id = c.datatree_id WHERE c.group_uid = ? AND (a1.a
ttribute_name = ? AND a1.attribute_key = ?)   GROUP BY c.datatree_id,  
c.datatree_name, c.datatree_order ORDER BY c.datatree
_order, c.datatree_name, c.datatree_id [on line 1107 of  
"/zdv-system/data/htdocs/horde-3.1.1/lib/Horde/DataTree/sql.php"]
Sep 20 18:30:03 HORDE [debug] [kronolith] SQL event list by : query =  
"SELECT event_id, event_uid, event_description, event
_location, event_status, event_attendees, event_keywords, event_title,  
event_category, event_recurtype, event_recurenddate,
  event_recurinterval, event_recurdays, event_start, event_end,  
event_alarm, event_modified, event_exceptions, event_creator
_id FROM kronolith_events WHERE calendar_id = ? AND ((event_alarm >  
?)) AND ((event_end > ? AND event_start < ?) OR (event_
recurenddate >= ? AND event_start <= ? AND event_recurtype <> ?))" [on  
line 289 of "/zdv-system/data/htdocs/horde-3.1.1/kro
nolith-h3-2.1.2/lib/Driver/sql.php"]
Sep 20 18:30:03 HORDE [debug] [nag] SQL Query by  
DataTree_sql::getByAttributes(): SELECT c.datatree_id, c.datatree_name  
FRO
M horde_datatree c LEFT JOIN horde_datatree_attributes a1 ON  
a1.datatree_id = c.datatree_id WHERE c.group_uid = ? AND ((a1.
attribute_name = ? AND a1.attribute_value = ?) OR (a1.attribute_name =  
? AND a1.attribute_key = ? AND CASE WHEN CAST(a1.att
ribute_value AS VARCHAR) ~ '^-\?[0-9]+$' THEN (CAST(a1.attribute_value  
AS INTEGER) \& ?) <> 0 ELSE FALSE END) OR (a1.attrib
ute_name = ? AND CASE WHEN CAST(a1.attribute_value AS VARCHAR) ~  
'^-\?[0-9]+$' THEN (CAST(a1.attribute_value AS INTEGER) \&
  ?) <> 0 ELSE FALSE END))   GROUP BY c.datatree_id, c.datatree_name,  
c.datatree_order ORDER BY c.datatree_order, c.datatree
_name, c.datatree_id [on line 1107 of  
"/zdv-system/data/htdocs/horde-3.1.1/lib/Horde/DataTree/sql.php"]

Sep 20 18:30:05 HORDE [debug] [mnemo] SQL Query by  
DataTree_sql::getByAttributes(): SELECT c.datatree_id, c.datatree_name F
ROM horde_datatree c LEFT JOIN horde_datatree_attributes a1 ON  
a1.datatree_id = c.datatree_id WHERE c.group_uid = ? AND (a1
.attribute_name = ? AND a1.attribute_key = ?)   GROUP BY  
c.datatree_id, c.datatree_name, c.datatree_order ORDER BY c.datatr
ee_order, c.datatree_name, c.datatree_id [on line 1107 of  
"/zdv-system/data/htdocs/horde-3.1.1/lib/Horde/DataTree/sql.php"]
Sep 20 18:30:05 HORDE [debug] [kronolith] SQL event list by : query =  
"SELECT event_id, event_uid, event_description, event
_location, event_status, event_attendees, event_keywords, event_title,  
event_category, event_recurtype, event_recurenddate,
  event_recurinterval, event_recurdays, event_start, event_end,  
event_alarm, event_modified, event_exceptions, event_creator
_id FROM kronolith_events WHERE calendar_id = ? AND ((event_alarm >  
?)) AND ((event_end > ? AND event_start < ?) OR (event_
recurenddate >= ? AND event_start <= ? AND event_recurtype <> ?))" [on  
line 289 of "/zdv-system/data/htdocs/horde-3.1.1/kro
nolith-h3-2.1.2/lib/Driver/sql.php"]

Sep 20 18:30:05 HORDE [debug] [mnemo] SQL Query by  
DataTree_sql::getByAttributes(): SELECT c.datatree_id, c.datatree_name F
ROM horde_datatree c LEFT JOIN horde_datatree_attributes a1 ON  
a1.datatree_id = c.datatree_id WHERE c.group_uid = ? AND ((a
1.attribute_name = ? AND a1.attribute_value = ?) OR (a1.attribute_name  
= ? AND a1.attribute_key = ? AND CASE WHEN CAST(a1.a
ttribute_value AS VARCHAR) ~ '^-\?[0-9]+$' THEN  
(CAST(a1.attribute_value AS INTEGER) \& ?) <> 0 ELSE FALSE END) OR  
(a1.attr
ibute_name = ? AND CASE WHEN CAST(a1.attribute_value AS VARCHAR) ~  
'^-\?[0-9]+$' THEN (CAST(a1.attribute_value AS INTEGER)
\& ?) <> 0 ELSE FALSE END))   GROUP BY c.datatree_id, c.datatree_name,  
c.datatree_order ORDER BY c.datatree_order, c.datatr
ee_name, c.datatree_id [on line 1107 of  
"/zdv-system/data/htdocs/horde-3.1.1/lib/Horde/DataTree/sql.php"]
Sep 20 18:30:05 HORDE [debug] [kronolith] SQL event list by : query =  
"SELECT event_id, event_uid, event_description, event
_location, event_status, event_attendees, event_keywords, event_title,  
event_category, event_recurtype, event_recurenddate,
  event_recurinterval, event_recurdays, event_start, event_end,  
event_alarm, event_modified, event_exceptions, event_creator
_id FROM kronolith_events WHERE calendar_id = ? AND ((event_alarm >  
?)) AND ((event_end > ? AND event_start < ?) OR (event_
recurenddate >= ? AND event_start <= ? AND event_recurtype <> ?))" [on  
line 289 of "/zdv-system/data/htdocs/horde-3.1.1/kro
nolith-h3-2.1.2/lib/Driver/sql.php"]










--------------------------------------------------------------------------------
M.Menge                                 Tel.: (49) 7071/29-70316
Universitaet Tuebingen                  Fax.: (49) 7071/29-5912
Zentrum fuer Datenverarbeitung          mail:  
michael.menge at zdv.uni-tuebingen.de
Waechterstrasse 76
72074 Tuebingen
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 5469 bytes
Desc: S/MIME Cryptographic Signature
Url : http://lists.horde.org/archives/dev/attachments/20060922/725fb8d2/smime.bin


More information about the dev mailing list