Let me say I am a fan of postgres, in my opinion it is a much better
database than MySql (and I chose it for our server systems at work over
mysql). Just a few reasons - mysql just recently got transactions thanks to
InnoDB tables, postgres has had them for a long time. Postgres has views,
stored procedures, subselects, etc. and is just plain easier to use.
That being said - Jesse wrote RT based on MySql. If you want optimal
performance, bite the bullet and use MySql. I’d been using it with Postgres
for about a year. People were complaining about how slow it was. When I
looked at upgrading to make the system faster, I tried rt3 with our current
ticket database with postgres and mysql, and it ran much faster with mysql,
I mean MUCH faster.
Yes I had my postgres optimized, that’s one of the nice things about
postgres, not that much to optimize (shared buffers, sortmem, vacuum
analyze every night, etc.) It kind of optimizes itself w/vacuum analyze.
But Jesse wrote it for mysql. He probably didn’t optimize it for postgres
(ie. cluster tables on the proper index, group queries into transactions so
postgres doesn’t autocommit and make every query a separate transaction,
etc.) There’s a huge # of queries executed just to display a ticket with
many transactions attached to it.
RT2 just runs best with MySQL. You can see this also in the rt2->rt3
importer if you compare how long it takes to convert about 4000 tickets
from v2 to v3.
Again, not because postgres is inherently slower, it’s just that he
developed this application for mysql, and that’s what you’d expect - it
would work best with mysql.
He does mention that briefly in a readme - I wish I had taken it to heart
Just a FYI for those who are thinking about using RT, or are upgrading from
an earlier version and have the opportunity to switch databases now.
His upgrade program works fine with either DB obviously, so you can go from
a v2 postgres to a v3 mysql.
Nicolae P. Costescu, Ph.D. / Senior Developer
46040 Center Oak Plaza, Suite 160 / Sterling, Va 20166
Tel: 571-434-1472 / Fax: 571-434-1478