On Nov 19, 2009, at 7:05 AM, Tarek Ziadé <ziade.ta...@gmail.com> wrote:

On Thu, Nov 19, 2009 at 12:51 PM, Jesse Noller <jnol...@gmail.com> wrote:
[..]

No - I don't. And while the error may look similiar to that bug, I think
that's a red herring.

I have no idea why installing distribute - or any other third party module would trigger a bug in a different module in the stdlib, unless the module
being installed was actively using multiprocessing.

It's more related to the way Distribute shutdowns the process, and the
fact that multiprocess
adds an entry to the atexit registry.


So, can anyone tell me if something in this chain is actually importing and
running multiprocessing?

Yes it does, thus multiprocessing adds an entry to atexit when its
util.get_logger() function
gets called.

IOW when atexit is triggered multiprocess.util.info is already
dereferenced by the GC.

My guess is that  the _exit_function should be careful about the
variables it uses because they are not garanteed to still be present
when things shutdown. (But I am not an atexit expert)

Tarek

Distribute imports multiprocessing? That's surprising
_______________________________________________
Distutils-SIG maillist  -  Distutils-SIG@python.org
http://mail.python.org/mailman/listinfo/distutils-sig

Reply via email to