Author: dreiss
Date: Tue Jun 10 17:59:34 2008
New Revision: 666430

URL: http://svn.apache.org/viewvc?rev=666430&view=rev
Log:
Fix thrift_buffered_transport leak in erl bindings

Summary:
  - Was leaking processes when the client cleanly disconnected since the
    thrift_processor process was exiting with 'normal' Reason. Changed it
    to 'protocol_closed'

Test plan:
  - Telnet to thrift service port and close (^]close) before the read timeout
    elapses. Verify that erlang:system_info(process_count) does not increase
    after doing this multiple times.

Modified:
    incubator/thrift/trunk/lib/alterl/src/thrift_processor.erl

Modified: incubator/thrift/trunk/lib/alterl/src/thrift_processor.erl
URL: 
http://svn.apache.org/viewvc/incubator/thrift/trunk/lib/alterl/src/thrift_processor.erl?rev=666430&r1=666429&r2=666430&view=diff
==============================================================================
--- incubator/thrift/trunk/lib/alterl/src/thrift_processor.erl (original)
+++ incubator/thrift/trunk/lib/alterl/src/thrift_processor.erl Tue Jun 10 
17:59:34 2008
@@ -33,7 +33,7 @@
             loop(State);
         {error, closed} ->
             % error_logger:info_msg("Client disconnected~n"),
-            ok
+            exit(protocol_closed)
     end.
 
 handle_function(State = #state{in_protocol = IProto,


Reply via email to