[issue13081] Crash in Windows with unknown cause

2011-10-03 Thread Amorilia

Amorilia  added the comment:

I'm the author of the application. The tool is written in pure Python, and only 
uses libraries from stdlib.

It would be really nice to have a simple standalone script to reproduce the 
crash, however I am still trying to reproduce it myself. So far no success.

--
nosy: +amorilia

___
Python tracker 
<http://bugs.python.org/issue13081>
___
___
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue13081] Crash in Windows with unknown cause

2011-10-04 Thread Amorilia

Amorilia  added the comment:

Quick update: apparently, fixing another seemingly unrelated bug, fixed this 
crashing issue as well for rlibiez. Here's relevant the commit:

https://github.com/amorilia/pyffi/commit/bd7886eefedfce8fb108c4701cf0467e2a707907

Basically, the problem was with multiprocessing.Pools not getting closed and 
joined.

I'm attaching a script (poolcrash.py) which, theoretically, ought to reproduce 
the crash - although it doesn't quite reproduce it on my machine; I'm running 
out of memory and my machine just hangs desperately accessing the swap file 
before anything happens...

Beware that running the bugged script may force you perform a hard reboot of 
your system, particularly if you wait until all physical memory is used up by 
zombie processes.

--
Added file: http://bugs.python.org/file23314/poolcrash.py

___
Python tracker 
<http://bugs.python.org/issue13081>
___
___
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue13081] Crash in Windows with unknown cause

2011-10-05 Thread Amorilia

Amorilia  added the comment:

Thanks for also trying it out, Brian.

I feel there's little more I can do. I guess the multiprocessing module could 
be documented a bit better that join() ought to be called before the pool is 
deleted? Currently, the docs merely say:

"Wait for the worker processes to exit. One must call close() or terminate() 
before using join()." 
(http://docs.python.org/library/multiprocessing.html#multiprocessing.pool.multiprocessing.Pool.join)

Something along the following lines could be added:

"You must call join() when you no longer need the pool; otherwise, zombie 
processes may keep running."

I'm happy to provide a patch, if needed.

--

___
Python tracker 
<http://bugs.python.org/issue13081>
___
___
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com