solaris threading problem: interpreter hangs on shutdown

H

Holger Joukl

Hi there,
I have severe problems running python 1.5.2 (yes I know, but this is a
productive environment;
cannot switch to py 2.3.3 until later this year...) on several
multi-processor sun systems.
This happens intermittently, both on solaris 6 and solaris 8 systems.

Basically, there is a mainthread that controls start and cleanup of some
other threads.
If one of those has done all its processing, it registers itself in the
to-be-finished list
of the main application object. The mainthread then invokes some cleanup
stuff,
makes sure all of the working treads end (they are .join-ed), and exits..
This works fine in maybe 95 % of all runs, but sometimes the program just
hangs.
Still, all the processing has been done correctly by that time, it simply
does not end.

The truss output in such a situation looks like that:
16562: lwp_cond_wait(0xFF275548, 0xFF275558, 0xFF26EDB0) (sleeping...)
16562: door_return(0x00000000, 0, 0x00000000, 0) (sleeping...)
16562: poll(0xFEE09A28, 2, 10000) = 0
16562: signotifywait() (sleeping...)
16562: lwp_sema_wait(0xFEF0DE30) (sleeping...)
16562: lwp_sema_wait(0xFEA03E30) (sleeping...)
16562: poll(0xFEE09A28, 2, 10000) (sleeping...)
16562: lwp_sema_wait(0xFED09E30) (sleeping...)
16562: lwp_sema_wait(0xFF26FA08) (sleeping...)
16562: lwp_sema_wait(0xFEB05E30) (sleeping...)
16562: lwp_sema_wait(0x00094990) (sleeping...)
16562: lwp_cond_wait(0xFF275548, 0xFF275558, 0xFF26EDB0) (sleeping...)
16562: door_return(0x00000000, 0, 0x00000000, 0) (sleeping...)
16562: poll(0xFEE09A28, 2, 10000) = 0
16562: signotifywait() (sleeping...)
16562: lwp_sema_wait(0xFEF0DE30) (sleeping...)
16562: lwp_sema_wait(0xFEA03E30) (sleeping...)
16562: poll(0xFEE09A28, 2, 10000) (sleeping...)
16562: lwp_sema_wait(0xFED09E30) (sleeping...)
16562: lwp_sema_wait(0xFF26FA08) (sleeping...)
16562: lwp_sema_wait(0xFEB05E30) (sleeping...)
16562: lwp_sema_wait(0x00094990) (sleeping...)

I do not have any clue what´s the reason for this, because everything just
seems to
work fine according to the debug output. - no possible deadlocks or
anything.
As this is s.th. I cannot reproduce within a simple sample app, it is also
difficult
for me to post any code...

But, from the back of my head, I think I somewhere read s.th. about
python/solaris threading
problems, I just did not find anything relevant on python.org or by
googling.

Does anybody know of python 1.5.2 threading library problems, in which
python release
this has been fixed, etc.???
Even vague hints are really appreciated!

Have a nice weekend,
Holger

Der Inhalt dieser E-Mail ist vertraulich. Falls Sie nicht der angegebene
Empfänger sind oder falls diese E-Mail irrtümlich an Sie adressiert wurde,
verständigen Sie bitte den Absender sofort und löschen Sie die E-Mail
sodann. Das unerlaubte Kopieren sowie die unbefugte Übermittlung sind nicht
gestattet. Die Sicherheit von Übermittlungen per E-Mail kann nicht
garantiert werden. Falls Sie eine Bestätigung wünschen, fordern Sie bitte
den Inhalt der E-Mail als Hardcopy an.

The contents of this e-mail are confidential. If you are not the named
addressee or if this transmission has been addressed to you in error,
please notify the sender immediately and then delete this e-mail. Any
unauthorized copying and transmission is forbidden. E-Mail transmission
cannot be guaranteed to be secure. If verification is required, please
request a hard copy version.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,774
Messages
2,569,599
Members
45,163
Latest member
Sasha15427
Top