Attached test case passes on python, fails with exception on jython 2.5.2rc1:
Exception in thread Thread:Traceback (most recent call last):
File "/opt/jython/jython2.5.2rc1/Lib/threading.py", line 179, in _Thread__bootstrap
self.run()
File "thread_local_test.py", line 16, in run
self.stuff.stuff = self.name
TypeError: __init__() takes at least 2 arguments (1 given)
It doesn't have the exception if you remove the call to local.__init__(self) on line 5. So the args within PyLocal are getting reset to empty during that call.

Sorry, found an issue. Ignore the patch. The test case wasn't complete enough and I didn't fully understand how python thread locals differ from java's. New test case which fails with my patch attached.

I committed a different fix for this in r7186
the orig. patch still caused this.keywords to be overwritten with bad values. oddly enough that didn't break the tests but I think it could have broken something at some point
Instead I moved the __init__ code into __new__ which is what CPython does