Lighthouse has a new layout. Prefer the old one? Return to the old layout, and switch back any time from the link at the top of each page.

This project is archived and is in readonly mode.

Performance regression caused by connection pool

#3036

Hi,

after upgrading an app from Rails 2.1 to 2.3 our test suite now runs ~ 50% slower. Curiously, the average response time on production got a bit faster (~ 10%). So it's either something specific to the test environment or some other improvements made up for the regression on production.

I tracked the performance regression down to the introduction of connection pooling:

http://github.com/rails/rails/commit/6f932b4790371e548c0df9033da96b...

I played around with the pooling code a little bit and did some profiling but couldn't come up with an obvious fix to solve this, so I would appreciate some help tracking this down as I guess this also should affect others?

I've attached two KCacheGrind call trees (one on 2.1, one on 2.2) and if I read them correctly

ConnectionHandler#retrieve_connection_pool
AbstractAdapter#verify!

have some performance impact.

Can anyone with more profiling experience please take a look at this?

thanks,
Florian

Reported by theflow · August 11th, 2009 @ 05:34 PM

State: stale
Milestone: none
Assigned to: nobody
Importance: none

Activity

  1. Rohit Arondekar
    Rohit Arondekar
    • State changed from new to stale
    • Importance changed from to

    Marking ticket as stale. If this is still an issue please leave a comment with suggested changes, creating a patch with tests, rebasing an existing patch or just confirming the issue on a latest release or master/branches.

    October 6th, 2010 @ 06:47 AM