Tom Hunt created THRIFT-3002: -------------------------------- Summary: Python loops forever with TZlibTransport and TFileObjectTransport Key: THRIFT-3002 URL: https://issues.apache.org/jira/browse/THRIFT-3002 Project: Thrift Issue Type: Bug Components: Python - Library Affects Versions: 0.9.2 Environment: Ubuntu Linux Reporter: Tom Hunt
When using a TZlibTransport wrapping a TFileObjectTransport, at end of file the TZlibTransport loops forever instead of doing anything sensible. This is because the TZlibTransport does not check for 0-length reads itself and calls TFileObjectTransport.read() rather than TFileObjectTransport.readAll() (the latter does its own checking and raises EOFError()). Thus, TZlibTransport spins forever on 0-length reads and hangs the program. Suggested fix: make TZlibTransport call readAll() instead of read() in its readComp() method, or check for 0-length reads on its own and raise EOFError(). -- This message was sent by Atlassian JIRA (v6.3.4#6332)