Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
master, 3.8.0, 3.8.1
-
None
Description
While conducting a routine flame graph analysis [attached] I realized some file calls where done on the event loop [screenshot attached]
By printing the thread that performs the enqueuing I was able to confirm this:
ENQUEUING on smtpserver-io-1
Blocking on the netty eventloop blocks all other concurrent requests to that thread and can cause significant delays by making the overall server irresponsive. This shall be avoided at all cost!
By reworking slightly the Netty pipeline, and relying on the eventExecutorGroup for the core handler this had effectively been mitigated:
ENQUEUING on smtpserver-0