Thriftpy/thriftpy

BrokenPipeError

pablasso opened this issue · 3 comments

We occasionally have this error, where the client is trying to read or write and the socket is already closed:

[Errno 32] Broken pipe
Traceback (most recent call last):
  File "/usr/local/lib/python3.5/site-packages/thriftpy/server.py", line 95, in handle
    self.processor.process(iprot, oprot)
  File "/usr/local/lib/python3.5/site-packages/thriftpy/thrift.py", line 307, in process
    self.send_result(oprot, api, result, seqid)
  File "/usr/local/lib/python3.5/site-packages/thriftpy/thrift.py", line 279, in send_result
    oprot.write_message_end()
  File "thriftpy/protocol/cybin/cybin.pyx", line 463, in cybin.TCyBinaryProtocol.write_message_end (thriftpy/protocol/cybin/cybin.c:6845)
  File "thriftpy/transport/framed/cyframed.pyx", line 95, in thriftpy.transport.framed.cyframed.TCyFramedTransport.c_flush (thriftpy/transport/framed/cyframed.c:2053)
  File "/usr/local/lib/python3.5/site-packages/thriftpy/transport/socket.py", line 129, in write
    self.sock.sendall(buff)
BrokenPipeError: [Errno 32] Broken pipe

It seems to be very intermittent and the network is fine, I'm not sure if this is a problem with thriftpy, any ideas on how to tackle this?

We are seeing the same issue too, and would like to know how to get this resolved. Thanks!
......
File "/usr/local/lib/python3.4/dist-packages/thriftpy/thrift.py", line 195, in _req
self._send(_api, **kwargs)
File "/usr/local/lib/python3.4/dist-packages/thriftpy/thrift.py", line 206, in _send
self._oprot.write_message_end()
File "thriftpy/protocol/cybin/cybin.pyx", line 463, in cybin.TCyBinaryProtocol.write_message_end (thriftpy/protocol/cybin/cybin.c:6845)
File "thriftpy/transport/framed/cyframed.pyx", line 95, in thriftpy.transport.framed.cyframed.TCyFramedTransport.c_flush (thriftpy/transport/framed/cyframed.c:2053)
File "/usr/local/lib/python3.4/dist-packages/thriftpy/transport/socket.py", line 129, in write
self.sock.sendall(buff)
BrokenPipeError: [Errno 32] Broken pipe

naoko commented

I too experiencing this intermittently.

  File "thriftpy/protocol/cybin/cybin.pyx", line 463, in cybin.TCyBinaryProtocol.write_message_end (thriftpy/protocol/cybin/cybin.c:6832)
  File "thriftpy/transport/buffered/cybuffered.pyx", line 80, in thriftpy.transport.buffered.cybuffered.TCyBufferedTransport.c_flush (thriftpy/transport/buffered/cybuffered.c:2138)
  File "/srv/transporter/venv/lib/python3.5/site-packages/thriftpy/transport/socket.py", line 129, in write
    self.sock.sendall(buff)

Me too. Same issues.