[crac] RFR: 8371462: [CRaC] Improve listening socket reopen through FD policies [v2]

Timofei Pushkin tpushkin at openjdk.org
Wed Nov 12 09:00:29 UTC 2025


On Mon, 10 Nov 2025 10:26:43 GMT, Radim Vansa <rvansa at openjdk.org> wrote:

>> The current tests for listening socket reopen have two defects:
>> * there is no thread calling accept() during the checkpoint, while normally servers would be waiting for new connections
>> * non-blocking server sockets where `Selector.select()` is used for the blocking is not exercised at all
>> 
>> As a result the scenario with Selector.select() fails to even close such server socket, due to FDs not in the `EpollSelectorImpl` not being processed after the selection keys are cancelled.
>> 
>> Second problem is the reopen: servers can use long-lived key with `SelectionKey.OP_ACCEPT` interest. When the server socket is closed the key is cancelled; to handle this transparently we need to make the key valid again and register it with the channel and selector.
>
> Radim Vansa has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Disable selector test on Linux

A test fails on Windows — should it be marked Linux-only until JDK-8371549 is resolved?

-------------

PR Review: https://git.openjdk.org/crac/pull/275#pullrequestreview-3452311563


More information about the crac-dev mailing list