jnr/jnr-unixsocket

Null PollSelectionKey attachment causes IllegalStateException in jetty

mpuncel opened this issue · 1 comments

Apologies if the description is inaccurate.

We use unix sockets with Jetty, which are powered by jnr-unixsocket. I filed an issue on the jetty project about seeing hundreds of exceptions related to a single connection (jetty/jetty.project#4865)

It seems that the maintainers think there is an issue in jnr-unixsocket that is causing the UnixSocketEndPoint attachment to the PollSelectionKey to be null?

Let me know if there is any additional information I can provide, I appreciate any help with this issue

@mpuncel I wonder if jetty is attempting to use a JDK-provided selector with one of our channels? The selector used for the unix socket should come from jnr-enxio, and not use the system-level provider since it doesn't know about the internals of the jnr-enxio slectors.

Is there any way you can provide a small repository that reproduces this? Ideally something that drives jnr-unixsocket alone (so we can be sure it's purely a jnr-unixsocket bug) but at least something that sets up a simple jetty example and drives it to errors.

Sorry for missing this bug over the summer!