Skip to content

Conversation

ChristopherWirt
Copy link

Netty has finally added io_uring support as part of the 4.2 release. In this update, they've changed the EventLooGroup class hierarchy, deprecating Epoll/KQueue/Nio EventLoopGroup and replacing it with Multi/SingleThreadIoEventLoopGroup composed of IoHandlerFactory, which defines the io event framework. No IOURingEventLoopGroup was ever added.

NettyEventLoops needs to adopt a new approach to deciding which EventLoopType to use. Using IoEventLoopGroup.isIoType(Handler) seems like a reasonable way to do this.

I've also removed the use of the deprecated EventLoopGroup classes and replaced them with the new method.

Without this PR you'll get AerospikeException("Unexpected EventLoopGroup") when trying to use netty with io_uring.

Netty has finally added io_uring support as part of the 4.2 release. In this update, they've changed the EventLoop class hierarchy, deprecating Epoll/KQueue/Nio EventLoopGroup and replacing it with Multi/SingleThreadIoEventLoopGroup composed of IoHandlerFactory, which defines the event framework. No IOURingEventLoopGroup was ever added.

NettyEventLoops needs to adopt a new approach to deciding which EventLoopType we are using. Using isIoType(Handler) seems like a reasonable way to do this.

I've also removed usages of the deprecated EventLoopGroup classes and replaced them with the new way of doing things.
@BrianNichols
Copy link
Member

We will merge this pull request when we upgrade to netty 4.2.

@BrianNichols
Copy link
Member

The snyk pull requests for Netty 4.2 were not triggered by a security vulnerability. We will be staying on the Netty 4.1.X branch for the time being.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants