Getting "DeadReferenceError: Calling Stale Broker" after ipcontroller restart

Bug #308253 reported by Vishal Vatsa
4
Affects Status Importance Assigned to Milestone
IPython
Confirmed
Medium
Vishal Vatsa

Bug Description

Not Sure that is a bug or an expected behavior.

I am starting the ipcontoller such that it reuses the ipcontroller-tc.furl between restarts.
After the restart, if I invoke a DeadReferenceError with the following traceback:
I am using the blocking TaskClient from an ipython shell.

In [8]: tc.spin()
---------------------------------------------------------------------------
DeadReferenceError Traceback (most recent call last)

/home/vishal/<ipython console> in <module>()

/usr/lib/python2.5/site-packages/IPython/kernel/taskclient.pyc in spin(self)
    119 scheduler is idle for some reason.
    120 """
--> 121 return blockingCallFromThread(self.task_controller.spin)
    122
    123 def queue_status(self, verbose=False):

/usr/lib/python2.5/site-packages/IPython/kernel/twistedutil.pyc in blockingCallFromThread(f, *a, **kw)
     67 @raise: any error raised during the callback chain.
     68 """
---> 69 return twisted.internet.threads.blockingCallFromThread(reactor, f, *a, **kw)
     70
     71 else:

/usr/lib/python2.5/site-packages/twisted/internet/threads.pyc in blockingCallFromThread(reactor, f, *a, **kw)
     81 result = queue.get()
     82 if isinstance(result, failure.Failure):
---> 83 result.raiseException()
     84 return result
     85

/usr/lib/python2.5/site-packages/twisted/python/failure.pyc in raiseException(self)
    317 information if available.
    318 """
--> 319 raise self.type, self.value, self.tb
    320
    321

DeadReferenceError: Calling Stale Broker

Revision history for this message
Brian Granger (ellisonbg) wrote :

I have confirmed this. It also occurs for the MultiEngineClient when the controller stop and is restarted underneath a live client. The client should have reconnect logic that is triggered on a DeadReferenceError.

Changed in ipython:
assignee: nobody → ellisonbg
importance: Undecided → Medium
status: New → Confirmed
Revision history for this message
Vishal Vatsa (vvatsa) wrote : Re: [Bug 308253] Re: Getting "DeadReferenceError: Calling Stale Broker" after ipcontroller restart

Hey Brian,

Totally forgot about this bug. Since I have had a look at this before,
feel free to assign it to me.

-vishal

2009/4/14 Brian Granger <email address hidden>:
> I have confirmed this.  It also occurs for the MultiEngineClient when
> the controller stop and is restarted underneath a live client.  The
> client should have reconnect logic that is triggered on a
> DeadReferenceError.
>
> ** Changed in: ipython
>   Importance: Undecided => Medium
>
> ** Changed in: ipython
>       Status: New => Confirmed
>
> ** Changed in: ipython
>     Assignee: (unassigned) => Brian Granger (ellisonbg)
>
> --
> Getting "DeadReferenceError: Calling Stale Broker" after ipcontroller restart
> https://bugs.launchpad.net/bugs/308253
> You received this bug notification because you are a direct subscriber
> of the bug.
>
> Status in IPython - Enhanced Interactive Python: Confirmed
>
> Bug description:
> Not Sure that is a bug or an expected behavior.
>
> I am starting the ipcontoller such that it reuses the ipcontroller-tc.furl between restarts.
> After the restart, if I invoke a DeadReferenceError with the following traceback:
> I am using the blocking TaskClient from an ipython shell.
>
>
> In [8]: tc.spin()
> ---------------------------------------------------------------------------
> DeadReferenceError                        Traceback (most recent call last)
>
> /home/vishal/<ipython console> in <module>()
>
> /usr/lib/python2.5/site-packages/IPython/kernel/taskclient.pyc in spin(self)
>    119         scheduler is idle for some reason.
>    120         """
> --> 121         return blockingCallFromThread(self.task_controller.spin)
>    122
>    123     def queue_status(self, verbose=False):
>
> /usr/lib/python2.5/site-packages/IPython/kernel/twistedutil.pyc in blockingCallFromThread(f, *a, **kw)
>     67         @raise: any error raised during the callback chain.
>     68         """
> ---> 69         return twisted.internet.threads.blockingCallFromThread(reactor, f, *a, **kw)
>     70
>     71 else:
>
> /usr/lib/python2.5/site-packages/twisted/internet/threads.pyc in blockingCallFromThread(reactor, f, *a, **kw)
>     81     result = queue.get()
>     82     if isinstance(result, failure.Failure):
> ---> 83         result.raiseException()
>     84     return result
>     85
>
> /usr/lib/python2.5/site-packages/twisted/python/failure.pyc in raiseException(self)
>    317         information if available.
>    318         """
> --> 319         raise self.type, self.value, self.tb
>    320
>    321
>
> DeadReferenceError: Calling Stale Broker
>

Revision history for this message
Brian Granger (ellisonbg) wrote :

Thanks for looking into this!

Changed in ipython:
assignee: ellisonbg → vvatsa
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.