Victor Stinner
eec9331b20
Fix SystemError in "raise" statement
...
Issue #27558 : Fix a SystemError in the implementation of "raise" statement.
In a brand new thread, raise a RuntimeError since there is no active
exception to reraise.
Patch written by Xiang Zhang.
2016-08-18 18:13:10 +02:00
Serhiy Storchaka
a793037d80
Issue #19527 : Fixed tests with defined COUNT_ALLOCS.
2016-07-03 22:27:26 +03:00
Serhiy Storchaka
6a7b3a77b4
Issue #26778 : Fixed "a/an/and" typos in code comment and documentation.
2016-04-17 08:32:47 +03:00
Serhiy Storchaka
8c0f0c5c1e
Issue #20556 : Used specific assert methods in threading tests.
2016-03-14 10:28:59 +02:00
Yury Selivanov
f488fb422a
Issue #19235 : Add new RecursionError exception. Patch by Georg Brandl.
2015-07-03 01:04:23 -04:00
Berker Peksag
ce643913a9
Issue #9517 : Move script_helper to the support package.
...
Patch by Christie Wilson.
2015-05-06 06:33:17 +03:00
Berker Peksag
4882cacab6
Issue #23943 : Fix typos. Patch by Piotr Kasprzyk.
2015-04-14 09:30:01 +03:00
Serhiy Storchaka
52005c2e13
Issue #22423 : Unhandled exception in thread no longer causes unhandled
...
AttributeError when sys.stderr is None.
2014-09-21 22:08:13 +03:00
Victor Stinner
933538edde
Issue #20526 , #19466 : Revert changes of issue #19466 which introduces a
...
regression: don't clear anymore the state of Python threads early during the
Python shutdown.
2014-02-13 12:48:54 +01:00
Serhiy Storchaka
f28ba369dd
Issue #20532 : Tests which use _testcapi now are marked as CPython only.
2014-02-07 10:10:55 +02:00
Serhiy Storchaka
5cfc79deae
Issue #20532 : Tests which use _testcapi now are marked as CPython only.
2014-02-07 10:06:39 +02:00
Victor Stinner
1310510793
Issue #14432 : Generator now clears the borrowed reference to the thread state
...
Fix a crash when a generator is created in a C thread that is destroyed while
the generator is still used. The issue was that a generator contains a frame,
and the frame kept a reference to the Python state of the destroyed C thread.
The crash occurs when a trace function is setup.
2013-12-13 02:17:29 +01:00
Victor Stinner
fdeb6ec45a
Issue #14432 : Remove the thread state field from the frame structure. Fix a
...
crash when a generator is created in a C thread that is destroyed while the
generator is still used. The issue was that a generator contains a frame, and
the frame kept a reference to the Python state of the destroyed C thread. The
crash occurs when a trace function is setup.
2013-12-13 02:01:38 +01:00
Victor Stinner
ed3b0bca3e
Issue #18874 : Implement the PEP 454 (tracemalloc)
2013-11-23 12:27:24 +01:00
Victor Stinner
45956b9a33
Close #19466 : Clear the frames of daemon threads earlier during the Python
...
shutdown to call objects destructors. So "unclosed file" resource warnings are
now corretly emitted for daemon threads.
2013-11-12 16:37:55 +01:00
Tim Peters
3d1b7a0c10
Whitespace normalization.
2013-10-08 21:29:27 -05:00
Tim Peters
e99bdb9694
Issue 19158: a rare race in BoundedSemaphore could allow .release() too often.
2013-10-08 21:12:58 -05:00
Tim Peters
7634e1cf90
Issue 19158: a rare race in BoundedSemaphore could allow .release() too often.
2013-10-08 20:55:51 -05:00
Antoine Pitrou
77e904e6a6
Issue #18948 : improve SuppressCoreFiles to include Windows crash popup suppression, and use it in more tests.
...
Patch by Valerie Lambert and Zachary Ware.
2013-10-08 23:04:32 +02:00
Tim Peters
72460fa68b
Get "stopped" back into repr(Thread) when appropriate.
...
Due to recent changes, a Thread doesn't know that it's over before
someone calls .join() or .is_alive(). That meant repr(Thread)
continued to include "started" (and not "stopped") before one of
those methods was called, even if hours passed since the thread
ended.
Repaired that.
2013-09-09 18:48:24 -05:00
Tim Peters
c363a23eff
Issue 18984: Remove ._stopped Event from Thread internals.
...
The fix for issue 18808 left us checking two things to be sure a Thread
was done: an Event (._stopped) and a mutex (._tstate_lock). Clumsy &
brittle. This patch removes the Event, leaving just a happy lock :-)
The bulk of the patch removes two excruciating tests, which were
verifying sanity of the internals of the ._stopped Event after a fork.
Thanks to Antoine Pitrou for verifying that's the only real value
these tests had.
One consequence of moving from an Event to a mutex: waiters (threads
calling Thread.join()) used to block each on their own unique mutex
(internal to the ._stopped event), but now all contend on the same
mutex (._tstate_lock). These approaches have different performance
characteristics on different platforms. I don't think it matters in
this context.
2013-09-08 18:44:40 -05:00
Antoine Pitrou
5da7e7959e
Issue #18808 again: fix the after-fork logic for not-yet-started or already-stopped threads.
...
(AFAICT, in theory, we must reset all the locks, not just those in use)
2013-09-08 13:19:06 +02:00
Antoine Pitrou
7b4769937f
Issue #18808 : Thread.join() now waits for the underlying thread state to be destroyed before returning.
...
This prevents unpredictable aborts in Py_EndInterpreter() when some non-daemon threads are still running.
2013-09-07 23:38:37 +02:00
Andrew Svetlov
58b5c5ad14
Issue #18882 : Add threading.main_thread() function.
2013-09-04 07:01:07 +03:00
Antoine Pitrou
625eed765a
test_threading isn't rudimentary anymore
2013-09-01 19:52:08 +02:00
Antoine Pitrou
4c8ce847e6
test_threading isn't rudimentary anymore
2013-09-01 19:51:49 +02:00
Charles-François Natali
79a53ea7d7
Issue #18418 : After fork(), reinit all threads states, not only active ones.
...
Patch by A. Jesse Jiryu Davis.
2013-08-30 23:34:26 +02:00
Charles-François Natali
9939cc89a4
Issue #18418 : After fork(), reinit all threads states, not only active ones.
...
Patch by A. Jesse Jiryu Davis.
2013-08-30 23:32:53 +02:00
Antoine Pitrou
7eaf3f7080
Issue #18808 : Non-daemon threads are now automatically joined when a sub-interpreter is shutdown (it would previously dump a fatal error).
2013-08-25 19:48:18 +02:00
Antoine Pitrou
8408cea0cd
Issue #17094 : Clear stale thread states after fork().
...
Note that this is a potentially disruptive change since it may
release some system resources which would otherwise remain
perpetually alive (e.g. database connections kept in thread-local
storage).
2013-05-05 23:47:09 +02:00
Łukasz Langa
20ea96f29a
backported rev 79713 from 3.4, test_recursion_limit skipped for -O0
2013-04-24 01:29:26 +02:00
R David Murray
5cbf3a0d6e
Merge #17435 : Don't use mutable default values in Timer.
...
Patch by Denver Coneybeare with some test modifications by me.
2013-03-30 17:22:30 -04:00
R David Murray
19aeb439c6
Issue #17435 : Don't use mutable default values in Timer.
...
Patch by Denver Coneybeare with some test modifications by me.
2013-03-30 17:19:38 -04:00
Stefan Krah
bfc02452a3
Merge 3.3.
2013-01-17 23:36:08 +01:00
Stefan Krah
fc4aa76d59
Issue #11870 : Skip test_3_join_in_forked_from_thread() on HP-UX.
2013-01-17 23:29:54 +01:00
Benjamin Peterson
d541d3fee4
When not optimized function stack sizes are much larger and may cause this test to fail.
2012-10-13 11:46:44 -04:00
Jesus Cea
4791a24268
#16135 : Removal of OS/2 support (Python code partial cleanup)
2012-10-05 03:15:39 +02:00
Antoine Pitrou
a9effcd802
Better diagnose test failure
2012-06-29 19:40:54 +02:00
Antoine Pitrou
b8b6a68baa
Better diagnose test failure
2012-06-29 19:40:35 +02:00
Antoine Pitrou
dd5aa36f17
Issue #14308 : Fix an exception when a dummy thread is in the threading module's active list after a fork().
2012-04-20 00:05:17 +02:00
Antoine Pitrou
8e6e0fdb7f
Issue #14308 : Fix an exception when a "dummy" thread is in the threading module's active list after a fork().
2012-04-19 23:55:01 +02:00
Charles-François Natali
9384c7ddab
Issue #13902 : Fix a random test_threading failure on FreeBSD 6 buildbots (due
...
to a known bug in pthread implementation on FreeBSD < 7).
2012-03-24 20:37:01 +01:00
Charles-François Natali
8e6fe648cc
Issue #13902 : Fix a random test_threading failure on FreeBSD 6 buildbots (due
...
to a known bug in pthread implementation on FreeBSD < 7).
2012-03-24 20:36:09 +01:00
Charles-François Natali
b2c9e9ad91
Skip test_threading.test_reinit_tls_after_fork() on platforms where fork()
...
can't be called reliably from a worker thread.
2012-02-08 21:29:11 +01:00
Charles-François Natali
6f91ce74a0
Skip test_threading.test_reinit_tls_after_fork() on platforms where fork()
...
can't be called reliably from a worker thread.
2012-02-08 21:30:02 +01:00
Charles-François Natali
3f32fc87ad
Merge.
2012-02-02 20:38:10 +01:00
Charles-François Natali
6d0d24e359
Issue #13817 : After fork(), reinit the ad-hoc TLS implementation earlier to fix
...
a random deadlock when fork() is called in a multithreaded process in debug
mode, and make PyOS_AfterFork() more robust.
2012-02-02 20:31:42 +01:00
Charles-François Natali
9ab91c60b2
Issue #13894 : Skip test_threading.CRLockTests if _CRLock isn't available. Patch
...
by Matt Joiner.
2012-01-28 11:37:42 +01:00
Charles-François Natali
6b671b2591
Issue #13894 : Skip test_threading.CRLockTests if _CRLock isn't available. Patch
...
by Matt Joiner.
2012-01-28 11:36:04 +01:00
Victor Stinner
2555b0aac7
(merge 3.2) Issue #11870 : Skip test_threading.test_2_join_in_forked_process()
...
on platforms with known OS bugs
Share the list of platforms with known OS bugs with other tests. Patch written
by Charles-François Natali.
2011-07-01 14:53:07 +02:00