Details
Description
There is a typo in thrift.transport.TSocket.TServerSocket: instead of "settimeout", we have "set_timeout". This causes the code to not work properly when we enable a global socket timeout in Python, using "socket.settimeout(30)". Because of the typo, the Python Thrift server will fail to change it's socket back to a non-timing out mode, and the listen call will fail after the timeout passes.