I tracked down a bug with WEBrick today that I reported with a patch
I think the key is that I have a few large images (60K+) being served from the database, causing the dynamic thread to run long enough for a second dynamic thread to get into trouble once a static request has cleared the REQUEST_MUTEX that is meant to keep the second dynamic request out.
The size of the image is key. This doesn’t happenn with smaller images. The database IO is probably causing the first thread to wait, causing the second to run, and its all downhill from there.
I’m using one of Rick’s snippets to apply patches to my Edge Rails.