I have a server running 2.3.6 on NetBSD. It has been basically working fine.
I connect to it with Conversations on Android, and the nature of phones is that they switch from wifi to cellular a lot, and I think this leads to dangling connections. keepalive is apparently not default on NetBSD, which seems legit. I have seen large numbers (50?) of connections to some combination a cell IP address and wifi networks I am often at. These seem to persist. After a while the server is troubled, I think because it has hit its open file descriptors limit. So (without reading the code): should jabberd2 force TCP keepalive on? should c2s (and s2s probably, but less likely to be an issue) close client connections if it has not seen anything from the client in some time period, like 8h? is there any expectation in the protocol that clients should be doing any application-level keep-alive? I am inclined to patch my server to turn on tcp keepalive. I don't think NetBSD has an option to force keepalive on if the program doesn't, although I have seen this option in OS X.
signature.asc
Description: PGP signature