I created a client in Ruby configured to establish 20,000 connections to local replica set servers (PSSA), as follows:
Mongo::Client.new(['localhost:34420'],min_pool_size:20000,max_pool_size:100000)
At about 6,000 connections per each of the servers, the servers start closing connections. Looking in the server log I see:
{"t":{"$date":"2020-05-29T21:49:15.723-04:00"},"s":"W", "c":"EXECUTOR","id":22993, "ctx":"conn5604","msg":"Terminating session due to error: {status}","attr":{"status":{"code":1,"codeName":"InternalError","errmsg":"failed to create ser vice entry worker thread"}}}
This message appears to be produced in src/mongo/transport/service_entry_point_utils.cpp:
} catch (...) { return {ErrorCodes::InternalError, "failed to create service entry worker thread"}; }
The above code appears to discard the root cause of the error, making further troubleshooting impossible.
As a MongoDB user I would like the server to provide error messages that indicate the cause of the problem, so that I can troubleshoot the problems.
- is duplicated by
-
SERVER-49455 Improve error reporting in launchServiceWorkerThread()
- Closed
- related to
-
SERVER-47075 Clean up log lines in mongo/transport and mongo/util/net
- Closed