• P
    Make connection pool fair with respect to waiting threads. · 02b23355
    Patrick Mahoney 提交于
    The core of this fix is a threadsafe, fair Queue class.  It is
    very similar to Queue in stdlib except that it supports waiting
    with a timeout.
    
    The issue this solves is that if several threads are contending for
    database connections, an unfair queue makes is possible that a thread
    will timeout even while other threads successfully acquire and release
    connections.  A fair queue means the thread that has been waiting the
    longest will get the next available connection.
    
    This includes a few test fixes to avoid test ordering issues that
    cropped up during development of this patch.
    02b23355
connection_pool_test.rb 9.0 KB