Alberto Gomez created GEODE-7061:
------------------------------------

             Summary: Under heavy load and many threads the C++ Native client 
may open lots of connections
                 Key: GEODE-7061
                 URL: https://issues.apache.org/jira/browse/GEODE-7061
             Project: Geode
          Issue Type: Bug
          Components: native client
            Reporter: Alberto Gomez


Under heavy load and many threads (>30) the C++ Native client tends to open a 
lot of connections which, if the idleTimeout is not relatively small, could 
provoke client port exhaustion.

The reason for this uncontrolled creation of connections is the implementation 
of the thread managing connections (ThinClientPoolDM::cleanStaleConnections()) 
that, in order to determine which connections to close due to timeout or load 
conditioning, gets all the connections from the pool for some time. Threads 
requiring a connection when this operation is fired, will create new 
connections while the maximum is not reached.

The proposed solution consists of changing the implementation of the 
cleanStaleConnections so that it does not get all the connections at some point 
but instead, takes one at a time in order to determine if it should close it.



--
This message was sent by Atlassian JIRA
(v7.6.14#76016)

Reply via email to