[Rt-devel] Why are Groups cachedmembers of themselves?

Joby Walker joby at u.washington.edu
Fri Oct 20 18:56:24 EDT 2006


Jesse Vincent wrote:
> On Fri, Oct 20, 2006 at 03:16:52PM -0700, Joby Walker wrote:
>> Is this truly necessary for all groups?  This is leading to a huge 
>> inflation in the number of cachedgroupmembers records.  Just with a 
>> simple example of every ticket averaging 1 requestor, 1 owner, and 1 cc, 
>> this means that there will be 10 cachedgroupmembers records per ticket 
>> (one for all four roles, and 2 for each real member) -- where only 3 
>> should be necessary.  We're rapidly approaching 100,000 tickets so that 
>> is 700,000 unnecessary records.
> 
> Actually, there's a different optimization I'd recommend. Instead of not
> creating the cachedgroupmembers, RT should simply not create the groups
> unless you're explicitly adding someone to them.

Yes, I just finished coding this (still needs some more testing).  This 
will eliminate 112K cachedgroupmembers & groups lines from our current 
database (as of last night) -- a nice improvement, but not as good as 
700K cachedgroupmembers *and* 112K groups.

> 
>> So why is this necessary?  Is it for ACL checks on User Defined groups?
> 
> It's for ~all group ACL and groupmember checks.
> 

doesn't sound encouraging...


Joby Walker
C&C SSG, University of Washington



More information about the Rt-devel mailing list