Integrated: 8299058: AssertionError in sun.net.httpserver.ServerImpl when connection is idle
Daniel Jeliński
djelinski at openjdk.org
Tue Oct 31 15:56:39 UTC 2023
On Wed, 25 Oct 2023 17:27:57 GMT, Daniel Jeliński <djelinski at openjdk.org> wrote:
> This patch fixes a race between the selector thread and the IdleTimeoutTask which closes connections that were idle for longer than IDLE_INTERVAL. With this patch, only the thread that successfully removes the connection from idleConnections is permitted to change it. If any data arrives after the IdleTimeoutTask removes the connection from idleConnections, the data is ignored.
>
> Additionally, this patch reduces the time interval between when the IdleTimeoutTask removes the connection from idleConnections and when the connection is closed, back to pre-JDK-8286918 level.
>
> No new test; with platform sockets it's next to impossible to reliably get the timing right. Existing tier1-3 tests pass.
This pull request has now been integrated.
Changeset: 47624f6f
Author: Daniel Jeliński <djelinski at openjdk.org>
URL: https://git.openjdk.org/jdk/commit/47624f6fc699aa66c58587460ce7f39fce5a86c7
Stats: 35 lines in 1 file changed: 8 ins; 13 del; 14 mod
8299058: AssertionError in sun.net.httpserver.ServerImpl when connection is idle
Reviewed-by: jpai, michaelm, dfuchs
-------------
PR: https://git.openjdk.org/jdk/pull/16366
More information about the net-dev
mailing list