[execnet-dev] execnet update problems

holger krekel holger at merlinux.eu
Mon Nov 9 16:10:55 CET 2009


Hi Gordon,

On Mon, Nov 09, 2009 at 14:20 +1100, Gordon Wrigley wrote:
> It also can't move sets and frozensets.

yes, the new serializer is missing proper support for sets 
and longs.  I asked Benjamin for help and otherwise will 
fix it myself. 

cheers,
holger

> On Mon, Nov 9, 2009 at 1:55 PM, Gordon Wrigley <py-dev at tolomea.com> wrote:
> > I haven't been paying much attention to my execnet based project for
> > the last while and I am just now updating.
> >
> > execnet 1.0.0b1 and 1.0.0b2 can't transport long ints
> >
> >
> > reproduction code:
> >
> > import execnet
> > gw = execnet.SshGateway("localhost")
> > channel = gw.remote_exec("while True: channel.send(channel.receive())")
> > channel.send(1)
> > print channel.receive()
> > channel.send(3083604692L)
> > print channel.receive()
> >
> >
> > 1.0.0alpha2:
> >
> > gordonw at gohma:~$ python test.py
> > 1
> > 3083604692
> >
> >
> > and with 1.0.0b2:
> >
> > gordonw at gohma:~$ python test.py
> > 1
> > Traceback (most recent call last):
> >  File "test.py", line 6, in <module>
> >    channel.send(3083604692L)
> >  File "/usr/local/lib/python2.6/dist-packages/execnet-1.0.0b2-py2.6.egg/execnet/gateway_base.py",
> > line 382, in send
> >    self.gateway._send(data)
> >  File "/usr/local/lib/python2.6/dist-packages/execnet-1.0.0b2-py2.6.egg/execnet/gateway_base.py",
> > line 604, in _send
> >    msg.writeto(self._serializer)
> >  File "/usr/local/lib/python2.6/dist-packages/execnet-1.0.0b2-py2.6.egg/execnet/gateway_base.py",
> > line 148, in writeto
> >    serializer.save((self.msgtype, self.channelid, self.data))
> >  File "/usr/local/lib/python2.6/dist-packages/execnet-1.0.0b2-py2.6.egg/execnet/gateway_base.py",
> > line 843, in save
> >    self._save(obj)
> >  File "/usr/local/lib/python2.6/dist-packages/execnet-1.0.0b2-py2.6.egg/execnet/gateway_base.py",
> > line 859, in _save
> >    dispatch(obj)
> >  File "/usr/local/lib/python2.6/dist-packages/execnet-1.0.0b2-py2.6.egg/execnet/gateway_base.py",
> > line 931, in save_tuple
> >    self._save(item)
> >  File "/usr/local/lib/python2.6/dist-packages/execnet-1.0.0b2-py2.6.egg/execnet/gateway_base.py",
> > line 859, in _save
> >    dispatch(obj)
> >  File "/usr/local/lib/python2.6/dist-packages/execnet-1.0.0b2-py2.6.egg/execnet/gateway_base.py",
> > line 900, in save_int
> >    self._write_int4(i)
> >  File "/usr/local/lib/python2.6/dist-packages/execnet-1.0.0b2-py2.6.egg/execnet/gateway_base.py",
> > line 910, in _write_int4
> >    raise SerializationError(error)
> > execnet.gateway_base.SerializationError: int must be less than 2147483647
> > gordonw at gohma:~$ Traceback (most recent call last):
> >  File "<string>", line 1, in <module>
> >  File "<string>", line 979, in <module>
> >  File "<string>", line 688, in serve
> >  File "<string>", line 715, in executetask
> >  File "<string>", line 382, in close
> >  File "<string>", line 641, in _send
> >  File "<string>", line 185, in writeto
> >  File "<string>", line 884, in save
> >  File "<string>", line 161, in write
> > ValueError: I/O operation on closed file
> >
> >
> >
> > Gordon
> >
> _______________________________________________
> execnet-dev mailing list
> execnet-dev at codespeak.net
> http://codespeak.net/mailman/listinfo/execnet-dev
> 

-- 



More information about the execnet-dev mailing list