We are running Socket 4.25K, Net 4.25E, Proc 4.25O and we have a custom
TCP server that listen()s for incoming connections and uses a proxy to
notify the server when an incoming connection is available. The previous
developer also added a timer to periodically call accept() even if the
proxy does not trigger, in case of a bug with the proxy (we have had some
trouble with proxies not firing in the past).
We have a problem on production that we haven’t been able to reproduce in
the test system: every few days or so, the server stops seeing any
incoming connections for up to about 10 minutes at a time, even though we
have another process on the same box that tries to connect to the server
every 5 minutes to make sure it is alive.
I have verified on the test system that the periodic accept() will pick up
any pending incoming connections even if the proxy doesn’t trigger, by
deliberately changing the code to not arm the proxy. But on production,
when we have an outage, it still doesn’t succeed, even though we would
expect dozens of pending incoming connections.
Any ideas ?