[ https://issues.apache.org/jira/browse/THRIFT-3753?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Ted Wang updated THRIFT-3753: ----------------------------- Flags: (was: Patch) Patch Info: Patch Available > TServerFramework::stop may fail to interrupt connected clients > -------------------------------------------------------------- > > Key: THRIFT-3753 > URL: https://issues.apache.org/jira/browse/THRIFT-3753 > Project: Thrift > Issue Type: Bug > Components: C++ - Library > Affects Versions: 0.9.3 > Reporter: Ted Wang > > This is a sequence that exposes the race condition: > (1) Thread-1: in serve(), blocked on accept() > (2) Thread-2: in stop(), calls interrupt() > (3) Thread-2: in stop(), in interruptChildren(), checked that socket is valid > (4) Thread-1: in serve(), unblocked because of interrupt(), calls > releaseOneDescriptor > (5) Thread-2: in interruptChildren(), send fails so clients are not > interrupted -- This message was sent by Atlassian JIRA (v6.3.4#6332)