[issue18984] Remove .stopped Event from Thread internals

2013-09-09 Thread Tim Peters

Tim Peters added the comment:

Antoine, could I bother you to try the attached cleanup.patch?  It looks 
harmless to me, but when I checked it in the Unix-y buildbots failed the 
thread+fork tests again :-(  Two examples:

http://buildbot.python.org/all/builders/x86%20Gentoo%203.x/builds/4914/steps/test/logs/stdio

http://buildbot.python.org/all/builders/x86%20Ubuntu%20Shared%203.x/builds/8581/steps/test/logs/stdio

Worse, the buildbot slaves appeared never to finish running then - I had to 
stop them (via the stop build button).

Maybe I'm just tired, but I've stared  stared at this and just don't see 
what's going wrong :-(

--
Added file: http://bugs.python.org/file31700/cleanup.patch

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue18984
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue18984] Remove .stopped Event from Thread internals

2013-09-09 Thread Antoine Pitrou

Antoine Pitrou added the comment:

I suppose we can close this issue now?

--

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue18984
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue18984] Remove .stopped Event from Thread internals

2013-09-09 Thread Antoine Pitrou

Antoine Pitrou added the comment:

Here is a fixed patch (works here, at least :-)).

--
Added file: http://bugs.python.org/file31701/cleanup2.patch

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue18984
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue18984] Remove .stopped Event from Thread internals

2013-09-09 Thread Tim Peters

Tim Peters added the comment:

Yes - and I just closed 18808 :-)

--
stage: patch review - committed/rejected
status: open - closed

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue18984
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue18984] Remove .stopped Event from Thread internals

2013-09-09 Thread Tim Peters

Tim Peters added the comment:

Well - I remain baffled, but am grateful for the patch - thanks :-)

--

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue18984
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue18984] Remove .stopped Event from Thread internals

2013-09-08 Thread Tim Peters

New submission from Tim Peters:

As discussed in issue 18808, now that we're checking for a tstate lock, the 
Thread._stopped Event has become an attractive nuisance.  The attached patch 
removes it.

This simplifies .join() and .is_alive(), and restores pre-18808 .join(timeout) 
endcase behavior (i.e., if join returns before the timeout expires, .is_alive() 
will always be False).

Since this doesn't add any new locks, I hope it won't create more problems with 
fork tests - but running on Windows I wouldn't know ;-)

--
assignee: tim.peters
components: Library (Lib)
files: remove_stopped
keywords: needs review, patch
messages: 197325
nosy: pitrou, tim.peters
priority: normal
severity: normal
stage: patch review
status: open
title: Remove .stopped Event from Thread internals
versions: Python 3.4
Added file: http://bugs.python.org/file31690/remove_stopped

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue18984
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue18984] Remove .stopped Event from Thread internals

2013-09-08 Thread Tim Peters

Changes by Tim Peters t...@python.org:


--
dependencies: +Thread.join returns before PyThreadState is destroyed

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue18984
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue18984] Remove .stopped Event from Thread internals

2013-09-08 Thread Antoine Pitrou

Antoine Pitrou added the comment:

Hmm.. I'm getting the following failures:

==
FAIL: test_4_joining_across_fork_in_worker_thread 
(test.test_threading.ThreadJoinOnShutdown)
--
Traceback (most recent call last):
  File /home/antoine/cpython/default/Lib/test/test_threading.py, line 726, in 
test_4_joining_across_fork_in_worker_thread
self.assertScriptHasOutput(script, end of main\n)
  File /home/antoine/cpython/default/Lib/test/test_threading.py, line 651, in 
assertScriptHasOutput
rc, out, err = assert_python_ok(-c, script)
  File /home/antoine/cpython/default/Lib/test/script_helper.py, line 55, in 
assert_python_ok
return _assert_python(True, *args, **env_vars)
  File /home/antoine/cpython/default/Lib/test/script_helper.py, line 46, in 
_assert_python
stderr follows:\n%s % (rc, err.decode('ascii', 'ignore')))
AssertionError: Process return code is 1, stderr follows:
Traceback (most recent call last):
  File string, line 29, in module
AttributeError: 'Thread' object has no attribute '_stopped'

==
FAIL: test_5_clear_waiter_locks_to_avoid_crash 
(test.test_threading.ThreadJoinOnShutdown)
--
Traceback (most recent call last):
  File /home/antoine/cpython/default/Lib/test/test_threading.py, line 784, in 
test_5_clear_waiter_locks_to_avoid_crash
self.assertScriptHasOutput(script, output)
  File /home/antoine/cpython/default/Lib/test/test_threading.py, line 651, in 
assertScriptHasOutput
rc, out, err = assert_python_ok(-c, script)
  File /home/antoine/cpython/default/Lib/test/script_helper.py, line 55, in 
assert_python_ok
return _assert_python(True, *args, **env_vars)
  File /home/antoine/cpython/default/Lib/test/script_helper.py, line 46, in 
_assert_python
stderr follows:\n%s % (rc, err.decode('ascii', 'ignore')))
AssertionError: Process return code is 1, stderr follows:
Traceback (most recent call last):
  File string, line 29, in module
AttributeError: 'Thread' object has no attribute '_stopped'

--

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue18984
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue18984] Remove .stopped Event from Thread internals

2013-09-08 Thread Antoine Pitrou

Antoine Pitrou added the comment:

Looks like it's mostly the tests trying to check an implementation detail that 
doesn't exist anymore :-)

--

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue18984
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue18984] Remove .stopped Event from Thread internals

2013-09-08 Thread Tim Peters

Tim Peters added the comment:

I agree with your diagnosis.  Unfortunately, I can't test the fork stuff.  
Well, OK, I actually think that's fortunate (for me ;-) ).

If you can see a quick way to fix these, please do.  I'm going to vanish for 
about 2 hours now.

--

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue18984
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue18984] Remove .stopped Event from Thread internals

2013-09-08 Thread Antoine Pitrou

Antoine Pitrou added the comment:

I think the fix is simply to remove the outdated tests.

I've been running test_threading in a loop with the (attached) updated patch, 
and there hasn't been a single failure.

--
type:  - resource usage
Added file: http://bugs.python.org/file31691/remove_stopped_2.patch

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue18984
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue18984] Remove .stopped Event from Thread internals

2013-09-08 Thread Roundup Robot

Roundup Robot added the comment:

New changeset aff959a3ba13 by Tim Peters in branch 'default':
Issue 18984:  Remove ._stopped Event from Thread internals.
http://hg.python.org/cpython/rev/aff959a3ba13

--
nosy: +python-dev

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue18984
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue18984] Remove .stopped Event from Thread internals

2013-09-08 Thread Tim Peters

Tim Peters added the comment:

Thanks, Antoine!  I pushed this change, figuring that even if some buildbots 
are still unhappy about 18808, getting rid of the Event can't make them more 
unhappy, and may make them happier.

--
resolution:  - fixed

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue18984
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue18984] Remove .stopped Event from Thread internals

2013-09-08 Thread Tim Peters

Changes by Tim Peters t...@python.org:


--
Removed message: http://bugs.python.org/msg197342

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue18984
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue18984] Remove .stopped Event from Thread internals

2013-09-08 Thread Tim Peters

Tim Peters added the comment:

New changeset aff959a3ba13 by Tim Peters in branch 'default':
Issue 18984:  Remove ._stopped Event from Thread internals.
http://hg.python.org/cpython/rev/aff959a3ba13

--

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue18984
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com