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)