2016-04-08 7 views
2

Ich bin die offizielle Sparsamkeit py: Tornado-Demo, Ausnahme wurde ausgelöst, nachdem der Client den Transport zu schließen.Sparsamkeit mit Tornado Beispiel Server Raise Exception

Beispiel: https://github.com/apache/thrift/tree/master/tutorial/py.tornado

Starting the server... 
ping() 
add(1, 1) 
zip() 
zip() 
calculate(1, Work(comment=None, num1=1, num2=0, op=4)) 
calculate(1, Work(comment=None, num1=15, num2=10, op=2)) 
getStruct(1) 
ERROR:thrift.TTornado:thrift exception in handle_stream 
Traceback (most recent call last): 
    File "/Users/user/venv/py27/lib/python2.7/site-packages/thrift/TTornado.py", line 174, in handle_stream 
    frame = yield trans.readFrame() 
    File "/Users/user/venv/py27/lib/python2.7/site-packages/tornado/gen.py", line 1008, in run 
    value = future.result() 
    File "/Users/user/venv/py27/lib/python2.7/site-packages/tornado/concurrent.py", line 232, in result 
    raise_exc_info(self._exc_info) 
    File "/Users/user/venv/py27/lib/python2.7/site-packages/tornado/gen.py", line 1014, in run 
    yielded = self.gen.throw(*exc_info) 
    File "/Users/user/venv/py27/lib/python2.7/site-packages/thrift/TTornado.py", line 141, in readFrame 
    raise gen.Return(frame) 
    File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/contextlib.py", line 35, in __exit__ 
    self.gen.throw(type, value, traceback) 
    File "/Users/user/venv/py27/lib/python2.7/site-packages/thrift/TTornado.py", line 125, in io_exception_context 
    message=str(e)) 
TTransportException: Stream is closed 

Gibt es eine Möglichkeit, diesen Fehler msg zu vermeiden oder, wie es zu fangen?

Antwort

0

viele Gründe würden StreamClosedError verursachen.

  1. Überprüfen Sie die Sparzweiter Seite, dort kann eine Ausnahme auslösen.
  2. nach dem Test, fand ich Sparsamkeit THttpServer kann Tornado Client Stream nicht dienen.
  3. und, wenn ich meine Tornado-Version von 4.4.3 auf 4.5 aktualisiere, verschwindet die StreamClosedError.

Client-Seite Thrift Version: 0.10.0

Tornado-Version: 4.5

Client-Seite Python-Version: 3.5.2

Systemversion: Ubuntu 16.04