RT 2.1.5 marks the end of the Watchers table. As of now, all
watchers stuff has moved into the newly extended groups table.
Down the line, this will get us much faster ACL checks and really
cool things like the ability to add groups as watchers for tickets.
Actually, that works today…I’m just not exposing UI for it yet.
I discovered that I’d turned of DBIx::SearchBuilder::Record::Cachable
somemwhere in the 2.1 dev series. Turning it back on yielded a huge
performance boost (no surprise there). But the test suite (yes, for
those of you just tuning in, 2.1 has a test suite now encompassing
almost 200 tests) turned up some weird behavior in the caching code
which caused RT to not notice deleted records for up to a couple seconds.
After a nice chat with matt knopp who originally wrote the caching code,
I took a hatchet to DBIx::SearchBuilder::Record::Cachable. After thoroughly bloodying
myself with its innards, I discovered that I neeed to tweak the cache to
be a bit more agressive in which records it caches. At this point, it was
about 3:30 AM and I discovered that I’d been listening to “Breakfast at Tiffany’s” by Deep Blue Something on repeat for about 3 hours. (No, really, I hadn’t
noticed until it was done.) When I was all done, I discovered that the new
code in DBIx::SB::R::C actually lets me improve performance fairly significantly for the ticket search page. (O(1) queries, rather than O(n) queries.) But
that’s a job for another day. One that’s probably not tomorrow.
For now, those of you who who have your medal of courage can grab RT 2.1.5
and DBIx-SearchBuilder 0.6.1 and have fun looking at the new code.
You might even try running it on a test box. But there will be schema changes
before any sort of a stable release this fall. (And ACLs are still hardwired on). But the logging stuff has been cleaned up a whole bunch. RT’s log files
are much prettier and more usable now. Hrm. It’s now 4:40 AM. The sun’s going
to come up soon. I’d better get to sleep before it does.
http://www.bestpractical.com/products/rt – Trouble Ticketing. Free.