[rt-users] RT Large Scale Performance Issues: Resolved
Andrew Armstrong
andrew at mammoth.com.au
Tue Jun 26 02:14:04 EDT 2007
Hi Everyone,
We have been making use of RT for almost a year now, however the performance
began to quickly degrade (tickets would take 30+ seconds to open at times)
over time.
We're using RT v3.6.3
After we checked both this list and other resources for a solution, we were
unable to find a solid fix which appeared to correct the issue.
We have managed to change a few core queries to our installation which
appears to have made a massive difference (tickets load in less than one
second most of the time).
We thought others would benefit from these changes and so I am passing on
the findings we made to fix up our RT install.
Force a JOIN order of important tables
>From Nathan at mammoth:
--
This is lib/RT/SearchBuilder_Local.pm - its a new file which is
automatically used by RT's extension system. We're using 3.6.3
It works by changing the SQL to do a straight join of tables in a specific
order. This appears to improve things because MySQL appears unable to choose
the optimal join order on its own.
Regards
Nathan
--
This changed file is attached.
Use another locking scheme
By default, it appears the user settings locking scheme (for read/write
locks) by default is done via MySQL (using the GET_LOCK() method). When a
user browses RT.
While this sounds fine, unfortunately its because there is no 'read/shared
lock' concept using GET_LOCK(), and so every lock the user makes (eg,
locking their preferences for READ during a page load) is promoted to an
exclusive write lock. This slows performance when loading multiple pages at
once as every page is competing for this exclusive lock, instead of using a
shared read lock.
Regards,
Andrew
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.bestpractical.com/pipermail/rt-users/attachments/20070626/eaa6a0b0/attachment.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: SearchBuilder_Local.pm
Type: application/octet-stream
Size: 1368 bytes
Desc: not available
URL: <http://lists.bestpractical.com/pipermail/rt-users/attachments/20070626/eaa6a0b0/attachment.obj>
More information about the rt-users
mailing list