This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Title: Intermittent AttributeError when using time.strptime in threads
Type: crash Stage:
Components: None Versions: Python 2.6
Status: closed Resolution: duplicate
Dependencies: Superseder: time.strptime not thread safe
View: 7980
Assigned To: Nosy List: amaury.forgeotdarc, ccorbacho, flox
Priority: normal Keywords:

Created on 2011-02-03 21:08 by ccorbacho, last changed 2022-04-11 14:57 by admin. This issue is now closed.

File name Uploaded Description Edit ccorbacho, 2011-02-03 21:08 Threading code example
Messages (2)
msg127822 - (view) Author: Carlos Corbacho (ccorbacho) Date: 2011-02-03 21:08
time.strptime() intermittently (and I mean _really_ intermittently) throws an AttributeError.

Steps to reproduce:

Run the attached script (you may have to do this quite a lot of times; in an evening of trying, I could only trigger this bug once...) - this just starts lots of threads so that we have lots of time.strptime()'s running in parallel.


It just keeps running every time.


On one run, the script bailed out almost immediately -

ccorbacho@valkyrie:~/chroots/trunk/home/ccorbacho/scratch/ccorbacho$ python
Exception in thread Thread-2:
Traceback (most recent call last):
  File "/usr/lib64/python2.6/", line 532, in __bootstrap_inner
  File "", line 13, in run
    time.strptime("30 Nov 00", "%d %b %y")
AttributeError: _strptime_time

This is with Python 2.6.6. However, at work we have been seeing this very intermittently with Python 2.5 in threaded code doing time.strptime() as well (though we just get AttributeError: strptime, but I don't have any code I can provide to reproduce on 2.5), hence I'm raising the bug.
msg127839 - (view) Author: Amaury Forgeot d'Arc (amaury.forgeotdarc) * (Python committer) Date: 2011-02-04 00:27
It's a duplicate of issue7980.
One workaround is to call strptime() once in the main thread.
Date User Action Args
2022-04-11 14:57:12adminsetgithub: 55317
2012-01-19 07:23:42floxsetnosy: + flox
2011-02-04 00:27:14amaury.forgeotdarcsetstatus: open -> closed

nosy: + amaury.forgeotdarc
messages: + msg127839

superseder: time.strptime not thread safe
resolution: duplicate
2011-02-03 21:08:06ccorbachocreate