Looks like a client-side issue.
What is probably happening is something along these lines:
The connection pool is initialized with a number of connections, then for some reason it loses connectivity with the server and the connections in the pool become invalid. The pool fails to catch this condition and instead of reinitializing the connections in the pool, it returns closed connections to the consumers.
The fact that users can connect from the machine after the fact means that connectivity has been restored.