[Rt-devel] slowness around 3.4.1 and custom fields?
Robert Spier
rspier at pobox.com
Tue Mar 22 23:53:36 EST 2005
At Tue, 22 Mar 2005 16:50:12 -0500,
seph wrote:
>
> I've got a 3.4.1 install against mysql, and I'm seeing a lot of
> slowness around certain custom field searches. It seems pretty
> reproducible by searching for a Custom Field IS Null. (Like Null is
> fine) It results in the mysql query: (here are the last 2 from the
> mysql-slow log)
Ick.
ObjectCustomFieldValues2 isn't kicking in because CustomField is the
first element.. but it's the join key so it isn't being picked up.
(Although this has to do with ObjectCustomFieldValues.CustomField not
being nullable I think.)
Try this one...
CREATE INDEX ObjectCustomFieldValues3
ON ObjectCustomFieldValues( ObjectId, ObjectType, Disabled );
It creates a huge (261 byte) key because of ObjectType, which is a
negative for IO reasons.
You may want to try this instead:
CREATE INDEX ObjectCustomFieldValues4
ON ObjectCustomFieldValues( ObjectId, Disabled );
You could also try this one.. but I don't think it'll help much.
CREATE INDEX Tickets7 ON Tickets( Type );
( I played with a few variants, such as...
Type, EffectiveId
Type, id
but on my really poor test database, it didn't show much
difference. But, try these on your larger dataset.)
(Why won't it help? Because Tickets.Type is going to have a very low
cardinality in most places.)
-R
More information about the Rt-devel
mailing list