[IPython-user] ipython 0.9 ipengine launch question

Brian Granger ellisonbg.net@gmail....
Wed Sep 3 18:23:03 CDT 2008


One correction,

To have furl files that don't change each time you run the controller
you need to specify the ports to listen on using:

ipcontroller --engine-port=10111 --client-port=10112

Otherwise, the controller uses random port numbers each time (they
change).  Because the port numbers are in the furls, the furls then
change.  But, if you set the port numbers by hand, the furls will
remain the same each time you run ipcontroller:

$ ipcontroller --engine-port=10111 --client-port=10112
(test4)pcp025382pcs:security bgranger$ cat *.furl
pb://5zdgwqsnrtpifiz6hp23by3w6jyabflk@127.0.0.1:10111,129.65.215.183:10111/pdsoipnt6oxbf3frpdlw76i47he3vudn
pb://la7is75mkk4z62aqdmfynnd7cibo4ecx@127.0.0.1:10112,129.65.215.183:10112/pwkwqv5f7fw4qgaw56yqwba42fob4xhd
pb://la7is75mkk4z62aqdmfynnd7cibo4ecx@127.0.0.1:10112,129.65.215.183:10112/xdm5xaczv6yfgdomdufuluhu4uopzrbi

And a second time to see they don't change...

$ ipcontroller --engine-port=10111 --client-port=10112
(test4)pcp025382pcs:security bgranger$ cat *.furl
pb://5zdgwqsnrtpifiz6hp23by3w6jyabflk@127.0.0.1:10111,129.65.215.183:10111/pdsoipnt6oxbf3frpdlw76i47he3vudn
pb://la7is75mkk4z62aqdmfynnd7cibo4ecx@127.0.0.1:10112,129.65.215.183:10112/pwkwqv5f7fw4qgaw56yqwba42fob4xhd
pb://la7is75mkk4z62aqdmfynnd7cibo4ecx@127.0.0.1:10112,129.65.215.183:10112/xdm5xaczv6yfgdomdufuluhu4uopzrbi


On Wed, Aug 27, 2008 at 3:17 PM, Brant Peterson <brantp@gmail.com> wrote:
> All,
>
> I'm using ipython 0.9 to run fairly standard commands (.push, .pull,
> .execute, etc) on ipengine/ipcontroller clusters, and I've been trying
> to get the -f flag working properly.  My clusterfile.py script looks
> like:
>
> controller = {'host':'kakahiaka',
>                  }
>
> engines = {'kakahiaka':4,
>
>               }
>
> sshx = '/mnt/py_util/sshx'
>
>
> and sshx reads:
> #!/bin/sh
> NUMPROCS=$(cat /proc/cpuinfo | grep -e "processor[[:space:]]:" | wc -l)
> export NUMPROCS
> export PATH=$PATH:$HOME/bin:$HOME/multiz:.
> export PYTHONPATH=/mnt/py_util
> "$@"
>
> In addition, I had to change line 306 of ipcluster.py from
> cmd = "ssh %s '%s' 'ipengine --controller-ip %s --logfile %s' &" % \
> (engineHost,sshx,contHost,engLog)
> to:
> cmd = "ssh %s '%s' 'ipengine --logfile %s' &" % (engineHost,sshx,engLog)
> since the new version of ipengine uses foolscap urls instead of
> straight hostnames.
>
> I'm just launching 4 engines on my local machine, which should be
> morally equivalent to ipcluster -n 4, with which I have no problems in
> testing
>
> Everything seems to come up fine for the -f run mode, and I can run
> for about 5-10min, before something hiccups, and I get the following
> errors:
> in the logfile:
> 2008/08/27 14:33 -0700 [-] unregistered engine with id: 0
>
> in my stderr buffer:
> [Engine Exception]ConnectionLost: Connection to the other side was
> lost in a non-clean fashion.
>
> and thrown on the local console:
> Fatal Python error: PyEval_RestoreThread: NULL tstate
> Aborted
>
> The sum of my experience with python threads has been googling for
> error messages, so my hope is that this is something fairly obvious
> that I'm just not doing.
>
> Any help, or suggestions about what to try would be greatly appreciated!
> -Brant
> _______________________________________________
> IPython-user mailing list
> IPython-user@scipy.org
> http://lists.ipython.scipy.org/mailman/listinfo/ipython-user
>


More information about the IPython-user mailing list