Intermittent TypeError NoneType in atexit handler of unit tests
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Object Storage (swift) |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
There is an intermittent problem with the Swift unit tests that results in them raising TypeError in the logging module's atexit handler.
This can be seen on the Jenkins runs for the following merges (noting that these code changes themselves are not the cause of the problem):
https:/
https:/
https:/
https:/
My Jenkins instance now triggers this all the time, so I was forced to dig into it. It looks like a bug in Python's logging module (in my case, Python 2.6.6 (r266:84292, Sep 15 2010, 15:52:39)). logging installs an atexit handler, but this indirectly calls threading.
This is related to http://
I have no idea why this is hitting me now, when it wasn't before. I have no idea why this affects Swift and nothing else that I'm running. I have no idea why this doesn't hit other people all the time.
Error in atexit.
Traceback (most recent call last):
File "/usr/lib/
func(*targs, **kargs)
File "/usr/lib/
h.close()
File "/usr/lib/
logging.
File "/usr/lib/
_acquireLock()
File "/usr/lib/
_lock.acquire()
File "/usr/lib/
me = _get_ident()
TypeError: 'NoneType' object is not callable
Error in sys.exitfunc:
Traceback (most recent call last):
File "/usr/lib/
func(*targs, **kargs)
File "/usr/lib/
h.close()
File "/usr/lib/
logging.
File "/usr/lib/
_acquireLock()
File "/usr/lib/
_lock.acquire()
File "/usr/lib/
me = _get_ident()
TypeError: 'NoneType' object is not callable
Related branches
- John Dickinson: Approve
- gholt (community): Approve
-
Diff: 16 lines (+6/-0)1 file modifiedtest/__init__.py (+6/-0)
Changed in swift: | |
status: | New → In Progress |
Changed in swift: | |
status: | In Progress → Fix Committed |
Changed in swift: | |
milestone: | none → 1.4.3 |
Changed in swift: | |
status: | Fix Committed → Fix Released |