Message70539
| Author |
jnoller |
| Recipients |
benjamin.peterson, donmez, jnoller |
| Date |
2008年08月01日.01:22:31 |
| SpamBayes Score |
1.6467733e-05 |
| Marked as misclassified |
No |
| Message-id |
<1217553753.95.0.259767449278.issue3419@psf.upfronthosting.co.za> |
| In-reply-to |
| Content |
Ben's incref error != the connection refused error. Here's some information
from Scott Leerssen who is using the original .52 code:
Hi Jesse,
I am having some trouble with the processing module (0.52) and thought you
might be of some help since you were so involved with it in the PEP process.
I have a queue of Process objects from which a runner thread pulls and starts
processes. The producers for the queue are many, many threads. I'm seeing
some very odd behavior when lots of processes try to start while others are
being reaped at the same time. I see tracebacks that look like the one below,
and also occasionally get "hangs" where the process module "seems" to take over
the GIL and never give it back. I did find a race condition bug in process.py
where a _cleaner function is run in start(), potentially joining on processes
that other threads may also be joining at the same time, which leads to
KeyError exceptions coming from _cleaner. I mutexed all my starts and joins to
get around that for now, but am stumped on the issue below. Does it look
familiar to you?
Thanks, and feel free to shrug and reply "beats me".
Scott
[dmbd:32451:-1236096096] 2008年07月31日 16:52:10,609 SYSMESG Process Process-24:
[dmbd:32451:-1236096096] 2008年07月31日 16:52:10,612 SYSMESG
[dmbd:32451:-1236096096] 2008年07月31日 16:52:10,613 SYSMESG Traceback (most
recent call last):
[dmbd:32451:-1236096096] 2008年07月31日 16:52:10,613 SYSMESG File
"/opt/race/share/sw/os/Linux_2.6_i686/python/lib/python2.5/site-
packages/processing/process.py", line 224, in _bootstrap
[dmbd:32451:-1236096096] 2008年07月31日 16:52:10,615 SYSMESG
_runAfterForkers()
[dmbd:32451:-1236096096] 2008年07月31日 16:52:10,616 SYSMESG File
"/opt/race/share/sw/os/Linux_2.6_i686/python/lib/python2.5/site-
packages/processing/process.py", line 300, in _runAfterForkers
[dmbd:32451:-1236096096] 2008年07月31日 16:52:10,617 SYSMESG func(obj)
[dmbd:32451:-1236096096] 2008年07月31日 16:52:10,617 SYSMESG File
"/opt/race/share/sw/os/Linux_2.6_i686/python/lib/python2.5/site-
packages/processing/managers.py", line 806, in _afterFork
[dmbd:32451:-1236096096] 2008年07月31日 16:52:10,620 SYSMESG self._incref()
[dmbd:32451:-1236096096] 2008年07月31日 16:52:10,621 SYSMESG File
"/opt/race/share/sw/os/Linux_2.6_i686/python/lib/python2.5/site-
packages/processing/managers.py", line 760, in _incref
[dmbd:32451:-1236096096] 2008年07月31日 16:52:10,621 SYSMESG
dispatch(connection, None, 'incref', (self._id,))
[dmbd:32451:-1236096096] 2008年07月31日 16:52:10,622 SYSMESG File
"/opt/race/share/sw/os/Linux_2.6_i686/python/lib/python2.5/site-
packages/processing/managers.py", line 92, in dispatch
[dmbd:32451:-1236096096] 2008年07月31日 16:52:10,623 SYSMESG raise result
[dmbd:32451:-1236096096] 2008年07月31日 16:52:10,624 SYSMESG RemoteError:
---------------------------------------------------------------------------
Remote Traceback (most recent call last):
File "/opt/race/share/sw/os/Linux_2.6_i686/python/lib/python2.5/site-
packages/processing/managers.py", line 190, in handleRequest
result = func(c, *args, **kwds)
File "/opt/race/share/sw/os/Linux_2.6_i686/python/lib/python2.5/site-
packages/processing/managers.py", line 404, in incref
self.id_to_refcount[ident] += 1
KeyError: 2880341100L |
|
History
|
|---|
| Date |
User |
Action |
Args |
| 2008年08月01日 01:22:34 | jnoller | set | recipients:
+ jnoller, donmez, benjamin.peterson |
| 2008年08月01日 01:22:33 | jnoller | set | messageid: <1217553753.95.0.259767449278.issue3419@psf.upfronthosting.co.za> |
| 2008年08月01日 01:22:33 | jnoller | link | issue3419 messages |
| 2008年08月01日 01:22:31 | jnoller | create |
|