James E. King, III created THRIFT-3081:
------------------------------------------

             Summary: C++ Consolidate client processing loops in TServers
                 Key: THRIFT-3081
                 URL: https://issues.apache.org/jira/browse/THRIFT-3081
             Project: Thrift
          Issue Type: Improvement
          Components: C# - Library
    Affects Versions: 0.9.2, 0.9.1, 0.9, 0.8
            Reporter: James E. King, III


Currently each of TSimpleServer, TThreadedServer, and TThreadPoolServer have 
their own very similar but not quite identical way of processing a client's 
lifetime.  The code has been copied around and changed; for example a 
TThreadPoolServer handles TTransportExceptions from process() differently than 
a TThreadedServer does.

There are certain requirements for this processing loop that needs to be met by 
every client.  Consolidating these three disparate implementations of the 
client processing loop into one will provide consistency as well as easier 
maintenance, as there will be one common client processing loop that will 
contain all the logic from {{eventHandler->createContext}} through 
{{client->close}}.

This was inspired by changes in THRIFT-2441 and I was encouraged to make this a 
separate body of work from that change so that it can be reviewed in isolation 
from other changes.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to