[execnet-dev] execnet update problems

Gordon Wrigley py-dev at tolomea.com
Mon Nov 9 03:55:21 CET 2009


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



More information about the execnet-dev mailing list