On Thu, Jan 6, 2022 at 1:01 PM Mark Thomas <ma...@apache.org> wrote: > > Hi, > > The Spring Boot team has pinged me regarding this issue: > https://github.com/spring-projects/spring-boot/issues/29266 > > I've done some debugging and what it comes down is that when a > Connector/Endpoint is paused, we also pause checking the async timeout > for requests associated with that Connector/Endpoint. > > The code has been like this since it was first implemented some 12 years > ago. > > I am wondering if this makes sense. I've always thought of "pause" as > pausing new incoming connections, disabling keep-alive (i.e. existing > connections terminate when the current request completes) and disabling > new streams on multiplexed connections but that existing requests would > continue. > > Is my understanding / expectation of pause (and resume) correct? > > Looking at the code there are a few things happening when a connection > is paused that don't immediately make sense to me. > > Assuming my understanding/expectation is correct then I'm thinking of a > patch (or possible patches) along the following lines: > > - keep the async timeout task active when the associated > connector/endpoint is paused > > - don't pause sendfile when the associated connector/endpoint is paused > > - continue to return recycled objects to caches when the associated > connector/endpoint is paused > > - review use of SocketWrapperBase.getSocket().free() to ensure it is > called when necessary - for example the embedded case where a > connector is repeatedly started and stopped. This may be a separate > patch as it isn't really related to the original issue. > > Thoughts?
Yes, this feature was about not accepting new requests, while finishing the current ones properly. So this makes sense but it needs quite a few improvements in that case. Rémy > > Mark > > --------------------------------------------------------------------- > To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org > For additional commands, e-mail: dev-h...@tomcat.apache.org > --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org