Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Won't Fix
-
None
-
None
-
None
-
None
Description
The proposed 1.16.0 freeze version of the TCP adaptor may have two start up problems:
- a connector is defined but the server is absent
- no connector is defined
If a connector is defined but the server is absent:
- A client connects to the listener. Listener starts with SYN, SYN/ACK, ACK.
- The client sends the first payload bytes; listener ACKs
- The server connection fails with SYN, RST/ACK, ACK.
- The client connection is closed with FIN, FIN/ACK, ACK
If a connector is not defined:
- A client connects to the listener. Listener starts with SYN, SYN/ACK, ACK.
- The client sends the first payload bytes
- No further traffic is passed on the client connection
- Even if the server is started while the client is waiting no further traffic is passed on the to the client.
Leaving the client connected forever with no hope of ever passing data is a bug. Two approaches that would improve service for the client:
- If there is no connector then close the client connection immediately
- If the client connection is left open then when a tcpConnector is defined attach that connector's server to the in-progress listener connection.