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@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@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