Problem with connectionStackLimit in TNonblockingServer
-------------------------------------------------------

                 Key: THRIFT-536
                 URL: https://issues.apache.org/jira/browse/THRIFT-536
             Project: Thrift
          Issue Type: Bug
          Components: Library (C++)
         Environment: Any
            Reporter: Grzegorz LeszczyƄski
            Priority: Minor


Problem is for version 1.0-782997 for debian, I don't know is it 0.1 or 0.2 
version.

Problem is that, when connectionStackLimit is used (and it is used by default), 
in TNonblockingServer::returnConnection TConnection could be destroyed. But 
returnConnection is called from TConnection::close, so we are inside method for 
object, which is destroyed and it could lead to crashes. It looks that only 
place, where TConnection data is used, after object being destroyed, is in 
TConnection::transition for state APP_READ_REQUEST (in "catch 
(IllegalStateException & ise)") - I think it is bug anyway, because return is 
missing there. But we made a patch for closing server gracefully and we use 
TConnection::close() in TConnection destructor, too.

Anyway, it isn't good idea to delete object inside call to its method.


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to