RFR: 8293696: java/nio/channels/DatagramChannel/SelectWhenRefused.java fails with "Unexpected wakeup" [v2]

Mark Sheppard msheppar at openjdk.org
Thu Oct 27 18:07:32 UTC 2022


On Thu, 27 Oct 2022 16:28:29 GMT, Darragh Clarke <duke at openjdk.org> wrote:

>> Added logging to SelectWhenRefused for an intermittent failure caused by unexpected wakeups, this includes trying to receive data if there is any available to identify where it is coming from.
>> 
>> I also set the test to run in othervm mode which should reduce the chances of this failure happening in the first place.
>
> Darragh Clarke has updated the pull request incrementally with one additional commit since the last revision:
> 
>   added loop to retry in event of interruption from other tests

test/jdk/java/nio/channels/DatagramChannel/SelectWhenRefused.java line 58:

> 56:             dc.register(sel, SelectionKey.OP_READ);
> 57: 
> 58:             for (;;) {

treat each test scenario individually wrt retry and set an upper bound on the number of potential retries ?

test/jdk/java/nio/channels/DatagramChannel/SelectWhenRefused.java line 65:

> 63:                     ignoreStrayWakeup = checkUnexpectedWakeup(dc, sel.selectedKeys());
> 64:                     sel.selectedKeys().clear();
> 65:                     if (ignoreStrayWakeup) {

scenario 1 and 3 treat the received message differently to that of scenario 2 -- should they be handled the same ?

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

PR: https://git.openjdk.org/jdk/pull/10851


More information about the nio-dev mailing list