Re: Pyro 3 event server hang

Irmen de Jong <[email protected]>
Newsgroups gmane.comp.python.pyro
Message-ID <[email protected]>
On 21-4-2013 12:05, Christoph Gohle wrote:
> Hi,
> 
> we are running pyro 3 here and are observing a strange behaviour of it's event service.
> After a certain sequence of events (which is not quite clear yet, but we have a script
> that reproduces the behaviour) (one of the) worker threads blocks and stops delivering
> events. I think I have seen it waiting for the self.remote.lock in
> self.remote.remoteInvocation, which indicates that a previous remoteInvocation never
> returned, which if I read the code correctly, should never happen.
> 
> Is this something that people have seen before? Is there a reason know and if so is
> there a fix? If not, can I get some hint, what to try?

There have been reports in the past of some problems with the Event Service of Pyro3.
It is not the most reliable piece of code around. I don't know what could cause it, it
can be a bug in the protocol, threading-related race conditions, etc. Perhaps the least
effort is to simply stop using it and to replace it with your own event system.

But have you tried playing with the PYRO_ES_QUEUESIZE or PYRO_ES_BLOCKQUEUE config
items? Or maybe you're overloading the system and you need to throttle your event
producers a little?

Pyro3 is deprecated anyway. The last version is over a year old. Can't you upgrade to
Pyro4? (Yeah, you'll have to implement an event service yourself, because Pyro4 doesn't
supply an out of the box solution for this).

I haven't touched Pyro3 for over a year and won't be getting back to it. The website and
doc say that Pyro3 is "in maintenance mode" but I'll change this now to "no longer
maintained". Unless it is a trivial bugfix, but debugging race conditions in the event
server isn't one of these, sorry.

Ofcourse, perhaps there are other people lurking here that have some ideas or
field-experience with using Pyro3's event service and problems they encountered?


Regards,
Irmen de Jong


------------------------------------------------------------------------------
Precog is a next-generation analytics platform capable of advanced
analytics on semi-structured data. The platform includes APIs for building
apps and a phenomenal toolset for data science. Developers can use
our toolset for easy data analysis & visualization. Get a free account!
http://www2.precog.com/precogplatform/slashdotnewsletter
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.