On May 29, 2012, at 4:54 PM, Darren Nickerson wrote: > > We're seeing similar performance regression after an upgrade from 4.0.0rc5 to > 4.0.5. I just loaded a very short ticket for the first time, it took 16 > seconds. I did a reload on the page, and it took less than 2 seconds. I also > went to Tickets -> New Search, and it took a full 20 seconds to load. > Subsequent reloads of that page were essentially immediate. Within 10 minutes > of not using RT much, opening a few tickets etc but then letting it sit idle > for 10 minutes, going back to Tickets->New Search once again took 20 seconds > to load, and was fast on subsequent loads > > Have I misconfigured or broken some cache mechanism? > > Our support staff have complained of a variety of long hangs/pauses like this > and I still haven't pinned it down enough much more than I outline above. Our > setup is very vanilla, MySQL with very little customization of RT ... if > there's instructions anywhere on how to figure out what's consuming all the > time I'd be happy to dig into it and report back here. I've been meaning to > try some of the other ways to invoke RT, we're using apache+FastCGI right > now, but there just hasn't been time. Perhaps the next time I'm waiting for > query builder to load ... ;-)
I enabled the profiler per Ruslan's advice, and loaded the new search page. It took over 20 seconds. It generated a lot of output, should I include it all here? I think the relevant bit might be: =Mason= localhost - /Elements/SelectOwnerDropdown {{{ =Mason= localhost - /Elements/ShowUser {{{ =Mason= localhost - /Elements/ShowUserVerbose {{{ =Mason= localhost - /Elements/ShowUserVerbose }}} 0.0021 =Mason= localhost - /Elements/ShowUser }}} 0.0045 =Mason= localhost - /Elements/ShowUser {{{ =Mason= localhost - /Elements/ShowUserVerbose {{{ =Mason= localhost - /Elements/ShowUserVerbose }}} 0.0020 =Mason= localhost - /Elements/ShowUser }}} 0.0042 =Mason= localhost - /Elements/ShowUser {{{ =Mason= localhost - /Elements/ShowUserVerbose {{{ =Mason= localhost - /Elements/ShowUserVerbose }}} 0.0018 =Mason= localhost - /Elements/ShowUser }}} 0.0038 =Mason= localhost - /Elements/ShowUser {{{ =Mason= localhost - /Elements/ShowUserVerbose {{{ =Mason= localhost - /Elements/ShowUserVerbose }}} 0.0018 =Mason= localhost - /Elements/ShowUser }}} 0.0037 =Mason= localhost - /Elements/ShowUser {{{ =Mason= localhost - /Elements/ShowUserVerbose {{{ =Mason= localhost - /Elements/ShowUserVerbose }}} 0.0019 =Mason= localhost - /Elements/ShowUser }}} 0.0038 =Mason= localhost - /Elements/ShowUser {{{ =Mason= localhost - /Elements/ShowUserVerbose {{{ =Mason= localhost - /Elements/ShowUserVerbose }}} 0.0019 =Mason= localhost - /Elements/ShowUser }}} 0.0038 =Mason= localhost - /Elements/ShowUser {{{ =Mason= localhost - /Elements/ShowUserVerbose {{{ =Mason= localhost - /Elements/ShowUserVerbose }}} 0.0019 =Mason= localhost - /Elements/ShowUser }}} 0.0038 =Mason= localhost - /Elements/ShowUser {{{ =Mason= localhost - /Elements/ShowUserVerbose {{{ =Mason= localhost - /Elements/ShowUserVerbose }}} 0.0019 =Mason= localhost - /Elements/ShowUser }}} 0.0038 =Mason= localhost - /Elements/ShowUser {{{ =Mason= localhost - /Elements/ShowUserVerbose {{{ =Mason= localhost - /Elements/ShowUserVerbose }}} 0.0019 =Mason= localhost - /Elements/ShowUser }}} 0.0038 =Mason= localhost - /Elements/ShowUser {{{ =Mason= localhost - /Elements/ShowUserVerbose {{{ =Mason= localhost - /Elements/ShowUserVerbose }}} 0.0019 =Mason= localhost - /Elements/ShowUser }}} 0.0042 =Mason= localhost - /Elements/SelectOwnerDropdown }}} 20.9869 I'm not sure how we get from all those small values to 20 seconds, but it does seem to represent the lion's share of the slow-down. The last few lines look like: =Mason= localhost - /Search/Build.html }}} 21.7671 =Mason= localhost - /Elements/Footer {{{ =Mason= localhost - /Elements/Footer }}} 0.0030 =Mason= localhost - /autohandler }}} 21.7901 =Mason= localhost - /Search/Build.html }}} ENDS So it would seem the SelectOwnerDropdown timer of 20.9869 represents most of the delay ... -Darren