In file tutorial/py/PythonServer.py

the call to TSocket.TServerSocket(9090)   is a problem. It should not be
called w/ any argument.

Since the definition of TServerSocket class's __init__()  is:

class TServerSocket(TSocketBase, TServerTransportBase):
  """Socket implementation of TServerTransport base."""

  def __init__(self, host=None, port=9090, unix_socket=None):
    self.host = host
    self.port = port
    self._unix_socket = unix_socket
    self.handle = None


This leads to "host" value being given "9090" which at run time produces
error:

Traceback (most recent call last):
  File "PythonServer.py", line 95, in <module>
    server.serve()
  File "/usr/lib/python2.7/site-packages/thrift/server/TServer.py", line
74, in serve
    self.serverTransport.listen()
  File "/usr/lib/python2.7/site-packages/thrift/transport/TSocket.py",
line 141, in listen
    res0 = self._resolveAddr()
  File "/usr/lib/python2.7/site-packages/thrift/transport/TSocket.py",
line 34, in _resolveAddr
    return socket.getaddrinfo(self.host, self.port, socket.AF_UNSPEC,
socket.SOCK_STREAM, 0, socket.AI_PASSIVE | socket.AI_ADDRCONFIG)
TypeError: getaddrinfo() argument 1 must be string or None

BTW, How does one get commit rights to the SVN repo? However, I would be
happy if someone else would apply the patch.

Gautam

Reply via email to