Benoit Tellier created JAMES-3736: ------------------------------------- Summary: Kill IMAP processing chain Key: JAMES-3736 URL: https://issues.apache.org/jira/browse/JAMES-3736 Project: James Server Issue Type: Improvement Components: IMAPServer Affects Versions: 3.7.0 Reporter: Benoit Tellier Fix For: 3.8.0
Today we create a processor chain to manage IMAP request: each processor passes the request to the next until the request is managed. This leads to absurdly, needlessly long call stacks as we easily have 40+ processors. - This have a performance impact as feeling thread stacks do not come for free - Exceptions are hard to read (longer stacktraces) - Reading flame graphs is also harder! We should in my opinion just use a map to directly get the processor for a given request, simply using the request class as a key. -- This message was sent by Atlassian Jira (v8.20.1#820001) --------------------------------------------------------------------- To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org For additional commands, e-mail: server-dev-h...@james.apache.org