I recently wrote a Rails app that launches 7 threads that each need to
do ActiveRecord::Base.finds on a PostgreSQL database. I figured that
since no database information is being changed on calls to find, these
calls would not require mutual exclusion. However, if I don't use
mutual exclusion, I get all sorts of weird errors not long after the
threads are spawned. It works just fine if I use mutual exclusion.
Anyone know why this is? Thanks!