When
connectingTimeout is lesser than time taken by
srvrConnectProc to finish, the Server thread in Broker:
- Is in CONNECTING mode,
- Waits in getServerIPC() event for the 'connectingTimeout' period of time
- Then raises an EVENT_TIMEOUT
- This causes the Server thread to transition to AVAILABLE mode.
When
srvrConnectProc finishes execution:
- The AVAILABLE Server thread receives a CONNECT message.
- AVAILABLE mode transitions to OBLIVION as per design (a CONNECT event is not accepted in AVAILABLE state).
- This causes the thread to be removed from serverPool, making it unmanageable.