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

Reply via email to