Docunext


Deadlocks and Recursive Locks

July 10th, 2011

How do you like these Ruby errors?

1.9.2

[2011-07-10 10:27:16] ERROR ThreadError: deadlock; recursive locking

1.8.7

ERROR ThreadError: thread ************** tried to join itself

D'oh! This all started happening when I copied a bunch of resources from my FathersWork project to the Regdel project.

Those resources include a bunch of Rack middleware, such as Rack::Config and Rack::Xsl, but the odd thing is that FathersWork.com is doing fine - but I haven't run it in the same environment.

Here's one link I found:

But I think that's a more esoteric instance of the exception. Yep, I was able to narrow it down to a change in Rack 1.3.0 that has to do with closing the body object.

I found this bug report on the matter, and indeed, rtomayko nailed it!

I made a quick couple of commits to rack-xsl and released 0.2.8 and it appears to be working perfectly. I'm not using Rack-xsl as much anymore, but its still a quality gem.

Yearly Indexes: 2003 2004 2006 2007 2008 2009 2010 2011 2012 2013 2015 2019 2020 2022