[rt-users] ACL.RightName = 'SuperUser' OR ACL.RightName = 'ShowACL' :: please help

Raed El-Hames rfh at vialtus.com
Mon Feb 8 11:50:02 EST 2010


Maybe this time I'll get an answer ..
RT-3.8.7 NO customisation apart from css
DBIx - 1.56 apache2,mod_perl2

I am seeing a lot of queries (1146 of them)
 
SELECT ACL.id FROM ACL, Groups, Principals, CachedGroupMembers WHERE 
(ACL.RightName = 'SuperUser' OR ACL.RightName = 'ShowACL') AND 
Principals.Disabled = 0 AND CachedGroupMembers.Disabled = 0 AND 
Principals.id = Groups.id AND Principals.PrincipalType = 'Group' AND 
Principals.id = CachedGroupMembers.GroupId AND 
CachedGroupMembers.MemberId = 1 AND ACL.PrincipalType = Groups.Type  AND 
((ACL.ObjectType = 'RT::System' AND ACL.ObjectId = 1) OR (ACL.ObjectType 
= 'RT::Queue' AND ACL.ObjectId = 4)) AND Groups.Domain = 
'RT::System-Role' AND Groups.Instance = '1' LIMIT 1


The only changes I see between these queries are
- variation between ShowACL and ModifyACL
- ACL.ObjectId = x (where x is the id foreach active queue in the system 
-- we have 116 active queues)


1- The first question that comes to mind what are we calling this lookup 
anyway, if the RT System user does not have permission on a queue, then 
the system is broken, so this lookup should be done differently and else 
where??
2- Where is this called from so I can disable it (unless some one can 
answer question 1 and enlighten me as to why its there)??

Any help will truly be appreciated , these 1147 for 116 queues, my live 
system have twice the amount of queues and my concerns that I will end 
up with 3000 or so pointless queries with every page.

Please please help.

Roy










More information about the rt-users mailing list