void freeOutstandingTxns ( ) { assert ( ! shouldCheckThreadIdAssertion ( ) || m_expectedThreadId == Thread . currentThread ( ) . getId ( ) ) ; for ( PartitionInFlightTracker tracker : m_trackerMap . values ( ) ) { for ( Iv2InFlight inflight : tracker . m_inFlights . values ( ) ) { m_outstandingTxns -- ; m_acg . reduceBackpressure ( inflight . m_messageSize ) ; } } }
When a connection goes away free all resources held by that connection This opens a small window of opportunity for mischief in that work may still be outstanding in the cluster but once the client goes away so does does the mapping to the resources allocated to it .