[Rt-devel] RT3.4.4: Peformance Ticket Update page
Dirk Pape
pape-rt at inf.fu-berlin.de
Mon Jan 2 06:45:17 EST 2006
Hello,
I just upgraded from 3.2.3 to 3.4.4 and observe that displaying the page
Ticket/Update.html takes much longer than before (about 10 sec.).
The rendering stops while displaying part of the left-side-menu.
mysql-slow.log conatins of the following queries (1 for each try on
different tickets; Due to caching I think, the subsequent calls to
Ticket/Update.html with the same Ticket are faster.):
# Time: 060102 12:33:06
# User at Host: rt_user[rt_user] @ localhost []
# Query_time: 8 Lock_time: 0 Rows_sent: 12 Rows_examined: 1039951
SELECT DISTINCT main.* FROM Users main , Principals Principals_1, ACL
ACL_2, Groups Groups_3, CachedGroupMembers CachedGroupMembers_4 WHERE
((ACL_2.RightName = 'OwnTicket')) AND ((CachedGroupMembers_4.MemberId =
Principals_1.id)) AND ((Groups_3.id = CachedGroupMembers_4.GroupId)) AND
((Principals_1.Disabled = '0')or(Principals_1.Disabled = '0')) AND
((Principals_1.id != '1')) AND ((main.id = Principals_1.id)) AND ( (
ACL_2.PrincipalId = Groups_3.id AND ACL_2.PrincipalType = 'Group'
AND ( Groups_3.Domain = 'SystemInternal' OR
Groups_3.Domain = 'UserDefined' OR Groups_3.Domain = 'ACLEquivalence'))
OR ( ( (Groups_3.Domain = 'RT::Queue-Role' AND
Groups_3.Instance = 58) OR ( Groups_3.Domain = 'RT::Ticket-Role' AND
Groups_3.Instance = 17806) ) AND Groups_3.Type = ACL_2.PrincipalType) )
AND (ACL_2.ObjectType = 'RT::System' OR (ACL_2.ObjectType = 'RT::Queue'
AND ACL_2.ObjectId = 58) ) ORDER BY main.Name ASC;
# Time: 060102 12:34:28
# User at Host: rt_user[rt_user] @ localhost []
# Query_time: 8 Lock_time: 0 Rows_sent: 2 Rows_examined: 1032971
SELECT DISTINCT main.* FROM Users main , Principals Principals_1, ACL
ACL_2, Groups Groups_3, CachedGroupMembers CachedGroupMembers_4 WHERE
((ACL_2.RightName = 'OwnTicket')) AND ((CachedGroupMembers_4.MemberId =
Principals_1.id)) AND ((Groups_3.id = CachedGroupMembers_4.GroupId)) AND
((Principals_1.Disabled = '0')or(Principals_1.Disabled = '0')) AND
((Principals_1.id != '1')) AND ((main.id = Principals_1.id)) AND ( (
ACL_2.PrincipalId = Groups_3.id AND ACL_2.PrincipalType = 'Group'
AND ( Groups_3.Domain = 'SystemInternal' OR
Groups_3.Domain = 'UserDefined' OR Groups_3.Domain = 'ACLEquivalence'))
OR ( ( (Groups_3.Domain = 'RT::Queue-Role' AND
Groups_3.Instance = 48) OR ( Groups_3.Domain = 'RT::Ticket-Role' AND
Groups_3.Instance = 8308) ) AND Groups_3.Type = ACL_2.PrincipalType) )
AND (ACL_2.ObjectType = 'RT::System' OR (ACL_2.ObjectType = 'RT::Queue'
AND ACL_2.ObjectId = 48) ) ORDER BY main.Name ASC;
#####
These are my keys on table CachedGroupMembers:
PRIMARY KEY (`id`),
KEY `DisGrouMem` (`GroupId`,`MemberId`,`Disabled`),
KEY `GrouMem` (`GroupId`,`MemberId`),
KEY `user_MemberIdGroupId` (`MemberId`,`GroupId`),
KEY `member1` (`MemberId`),
KEY `CachedGroupMembersFKI1` (`ImmediateParentId`),
KEY `CachedGroupMembersFKI2` (`MemberId`)
Thanks for any help.
Regards,
Dirk.
--
Dr. Dirk Pape (Projektleitung Campus Management)
Fachbereich Mathematik und Informatik der FU Berlin
Grunewaldstr. 34a, 12165 Berlin
Tel. +49 (30) 838 75143, Fax. +49 (30) 838 54654
More information about the Rt-devel
mailing list