I have a Mac app that makes many connections between itself and helper processes. They are done via TCP connections as sometimes the helpers may be running on separate machines to share the load. The Xojo app runs a server socket that listens for incoming connections from the helper or plugin apps. This has been working flawlessly for a decade I’ve got a single user now who is reporting that after running for some time the app starts dropping those connections with a 103 error. Which makes no sense to me at all given that a 103 error should be a name resolution error and these are listening sockets and so not actually doing any lookups and were already connected.
Once that starts to happen all the connections start to fail one after another and no new connections can be made until he restarts the machine.
Obviously something is going wrong externally to my app, but how on earth can I help to debug a name resolution error on a listening socket? That makes no sense to me. Does a 103 error have a different meaning on a listening socket?
Is there a good way to see if has some other app or script running on the box that is using up all the available file handles over time or something? I could lsof to see them but thats a lot of output to go through and I”m not sure what those limits are anyway.
Any suggestions to help me gather more useful info from the fellow would be very much appreciated Thanks!