netty5/transport/src/main/java/io/netty/channel
Scott Mitchell c37267d682 NioEventLoop#rebuildSelector0 throws ClassCastException
Motivation:
Commit 795f318 simplified some code related to the special case Set for the selected keys and introduced a Selector wrapper to make sure this set was properly reset. However the JDK makes assumptions about the type of Selector and this type is not extensible. This means whenever we call into the JDK we must provide the unwrapped version of the Selector or we get a ClassCastException. We missed a case of unwrapping in NioEventLoop#rebuildSelector0.

Modificaitons:
- NioEventLoop#openSelector should return a tuple so we can atomically set the wrapped and unwrapped Selector
- NioEventLoop#rebuildSelector0 should use the unwrapped version of the selector

Result:
Fixes https://github.com/netty/netty/issues/6607.
2017-04-05 19:34:49 -07:00
..
embedded Cleanup ChannelId handling of basic methods 2017-02-15 11:53:36 -08:00
group Make retained derived buffers recyclable 2016-05-17 11:16:13 +02:00
local Remove usage of own Atomic*FieldUpdater in favor of JDKs 2016-12-15 08:09:06 +00:00
nio NioEventLoop#rebuildSelector0 throws ClassCastException 2017-04-05 19:34:49 -07:00
oio [#5639] Ensure fireChannelActive() is also called if Channel is closed in connect promise. 2016-08-24 08:47:49 +02:00
pool Expose channel pool configuration to subclasses. 2016-12-21 20:45:01 +01:00
socket Use system property to detect if root is running the program 2017-03-09 11:16:10 +01:00
AbstractChannel.java Use system property to detect if root is running the program 2017-03-09 11:16:10 +01:00
AbstractChannelHandlerContext.java Cleanup : validatePromise ranamed to isNotValidPromise and added more tests for corner cases. 2017-02-10 12:39:58 +01:00
AbstractEventLoop.java Implement EventExecutor.parent() in AbstractEventExecutor 2014-03-24 11:05:51 +09:00
AbstractEventLoopGroup.java Add EventExecutor.children() in favor of iterator() 2014-03-24 12:32:55 +09:00
AbstractServerChannel.java maxBytesPerRead channel configuration 2015-08-05 23:59:54 -07:00
AdaptiveRecvByteBufAllocator.java EpollRecvByteAllocatorHandle doesn't inform delegate of more data 2017-02-13 17:42:24 -08:00
AddressedEnvelope.java Enable a user specify an arbitrary information with ReferenceCounted.touch() 2014-02-13 18:16:25 -08:00
Channel.java Typo error: Method invoker() no longer exists 2017-01-19 12:16:31 +01:00
ChannelConfig.java Remove @Deprecated for primitive WriteWaterMark getters and setters 2016-09-05 10:26:05 +02:00
ChannelDuplexHandler.java Rename future to promise in the ChannelDuplexHandler method arguments. 2016-07-06 08:55:29 +02:00
ChannelException.java Remove apiviz tags - we are focusing on user guide instead and putting diagrams there 2013-02-14 12:09:16 -08:00
ChannelFactory.java Name resolver API and DNS-based name resolver 2014-10-16 17:05:20 +09:00
ChannelFlushPromiseNotifier.java ChannelFlushPromiseNotifier should allow long value for pendingDataSize 2014-06-03 17:34:53 +02:00
ChannelFuture.java trivial javadoc fixes 2016-03-16 20:18:29 +01:00
ChannelFutureListener.java Replace TransferFuture(Listener) with (Channel)ProgressiveFuture(Listener) 2013-04-15 15:26:20 +09:00
ChannelHandler.java Mark ChannelHandler.exceptionCaught(...) as deprected. 2015-11-23 09:59:22 +01:00
ChannelHandlerAdapter.java Ensure CombinedChannelDuplexHandler can not be shared. 2017-02-14 08:42:23 +01:00
ChannelHandlerContext.java Rename ChannelHandlerContext#fireUserEventTriggered() argument from event to evt so it matches the ChannelInboundHandler#userEventTriggered() argument's name. 2016-07-07 17:01:19 +02:00
ChannelId.java Resurrect Channel.id() with global uniqueness 2014-02-13 15:53:07 -08:00
ChannelInboundHandler.java Add @Deprecated when the javadoc says its deprecated 2016-05-01 20:30:13 +02:00
ChannelInboundHandlerAdapter.java Mark ChannelHandler.exceptionCaught(...) as deprecated in preparation to move to ChannelInboundHandler. Related to [#1808] 2013-09-08 20:11:51 +02:00
ChannelInboundInvoker.java Add ChannelInboundInvoker and ChannelOutboundInvoker 2016-05-14 20:41:13 +02:00
ChannelInitializer.java Ensure correct ordering if a ChannelInitializer adds another ChannelInitializer 2016-08-03 07:50:46 +02:00
ChannelMetadata.java Allow to change if EmbeddedChannel should handle close() and disconnect() different. 2016-01-14 07:19:23 +01:00
ChannelOption.java Remove reference to 5.0 release. 2016-08-23 09:46:57 +02:00
ChannelOutboundBuffer.java Fix some warnings at generics usage 2017-02-22 07:29:59 +01:00
ChannelOutboundHandler.java Undeprecate deregister() and chanelUnregistered() 2014-04-25 16:40:42 +09:00
ChannelOutboundHandlerAdapter.java Fix ChannelOutboundHandlerAdapter javadoc 2016-01-26 10:13:16 +01:00
ChannelOutboundInvoker.java Add ChannelInboundInvoker and ChannelOutboundInvoker 2016-05-14 20:41:13 +02:00
ChannelPipeline.java [#5239] Allow adding handlers to pipeline with null name. 2016-05-24 06:22:44 +02:00
ChannelPipelineException.java Remove apiviz tags - we are focusing on user guide instead and putting diagrams there 2013-02-14 12:09:16 -08:00
ChannelProgressiveFuture.java Make EventExecutor.shutdownGracefully() return Future 2013-06-12 08:00:54 +09:00
ChannelProgressiveFutureListener.java Replace TransferFuture(Listener) with (Channel)ProgressiveFuture(Listener) 2013-04-15 15:26:20 +09:00
ChannelProgressivePromise.java [#2618] Introduce ChannelPromise.unvoid() and ChannelFuture.isVoid() 2014-07-03 14:17:12 +02:00
ChannelPromise.java [#2618] Introduce ChannelPromise.unvoid() and ChannelFuture.isVoid() 2014-07-03 14:17:12 +02:00
ChannelPromiseAggregator.java Deprecate PromiseAggregator 2016-03-14 10:53:30 -07:00
ChannelPromiseNotifier.java [#5598] Ensure SslHandler not log false-positives when try to close the channel due timeout. 2016-07-30 21:15:09 +02:00
CoalescingBufferQueue.java Add CompositeByteBuf.addComponent(boolean ...) method to simplify usage 2016-05-21 19:52:16 +02:00
CombinedChannelDuplexHandler.java Ensure CombinedChannelDuplexHandler can not be shared. 2017-02-14 08:42:23 +01:00
CompleteChannelFuture.java [#2618] Introduce ChannelPromise.unvoid() and ChannelFuture.isVoid() 2014-07-03 14:17:12 +02:00
ConnectTimeoutException.java [#1036] Add special ConnectTimeoutException which is thrown if a connection failed because of a timeout 2013-03-07 20:53:45 +01:00
DefaultAddressedEnvelope.java Revamp DNS codec 2015-05-01 11:33:16 +09:00
DefaultChannelConfig.java EpollRecvByteAllocatorHandle doesn't inform delegate of more data 2017-02-13 17:42:24 -08:00
DefaultChannelHandlerContext.java Remove ChannelHandlerInvoker 2016-05-17 11:14:00 +02:00
DefaultChannelId.java Prefer JDK ThreadLocalRandom implementation over ours. 2017-02-16 15:44:00 -08:00
DefaultChannelPipeline.java Ensure ChannelHandler.handlerAdded(...) callback is executed directly when added from ChannelFutureListener added to the registration future. 2016-07-09 08:04:15 +02:00
DefaultChannelProgressivePromise.java [#2618] Introduce ChannelPromise.unvoid() and ChannelFuture.isVoid() 2014-07-03 14:17:12 +02:00
DefaultChannelPromise.java [#2618] Introduce ChannelPromise.unvoid() and ChannelFuture.isVoid() 2014-07-03 14:17:12 +02:00
DefaultEventLoop.java Replace LocalEventLoopGroup with DefaultEventLoopGroup 2014-03-24 11:39:55 +09:00
DefaultEventLoopGroup.java [#5763] DefaultEventLoopGroup doesn't expose ctor variant that accepts custom Executor 2016-09-01 08:20:05 +02:00
DefaultFileRegion.java Fix typo missed in f46cfbc590 2016-04-05 15:32:54 +02:00
DefaultMaxBytesRecvByteBufAllocator.java Make methods 'static' where it missed 2017-02-23 11:01:57 +01:00
DefaultMaxMessagesRecvByteBufAllocator.java EpollRecvByteAllocatorHandle doesn't inform delegate of more data 2017-02-13 17:42:24 -08:00
DefaultMessageSizeEstimator.java [#4363] Improve size calculation of messages when written from outside the EventLoop 2015-10-28 21:54:31 +01:00
DefaultSelectStrategy.java EPOLL SelectStrategy 2016-03-30 15:11:35 -07:00
DefaultSelectStrategyFactory.java EPOLL SelectStrategy 2016-03-30 15:11:35 -07:00
EventLoop.java [#5486] Not operate on serial execution assumption when using EventExecutor in the DefaultChannelPipeline. 2016-07-07 15:01:56 +02:00
EventLoopException.java Fix types in javadocs 2013-07-22 19:14:36 +02:00
EventLoopGroup.java Add a EventLoopGroup.register(ChannelPromise) 2016-05-21 18:40:17 +02:00
FailedChannelFuture.java Fix most inspector warnings 2014-07-02 19:55:07 +09:00
FileRegion.java Motivation: 2017-03-06 14:43:52 -08:00
FixedRecvByteBufAllocator.java EpollRecvByteAllocatorHandle doesn't inform delegate of more data 2017-02-13 17:42:24 -08:00
MaxBytesRecvByteBufAllocator.java Fix errors reported by javadoc 2015-12-27 08:36:45 +01:00
MaxMessagesRecvByteBufAllocator.java maxBytesPerRead channel configuration 2015-08-05 23:59:54 -07:00
MessageSizeEstimator.java Correctly update Channel.isWritable() when the write happens from outside the EventLoop in a fast fashion. Fixes [#1697] 2013-08-07 10:10:43 +02:00
MultithreadEventLoopGroup.java Fix javadoc issues 2017-02-22 07:31:07 +01:00
package-info.java Remove apiviz tags - we are focusing on user guide instead and putting diagrams there 2013-02-14 12:09:16 -08:00
PendingWriteQueue.java Take memory overhead of ChannelOutboundBuffer / PendingWriteQueue into account 2016-11-03 15:54:00 +01:00
RecvByteBufAllocator.java Fix javadoc issues 2017-02-22 07:31:07 +01:00
ReflectiveChannelFactory.java Name resolver API and DNS-based name resolver 2014-10-16 17:05:20 +09:00
SelectStrategy.java Allow to customize NIO (channel) select strategies. 2016-03-30 15:01:25 -07:00
SelectStrategyFactory.java Allow to customize NIO (channel) select strategies. 2016-03-30 15:01:25 -07:00
ServerChannel.java Revert file mode 2012-07-07 14:39:35 +09:00
SimpleChannelInboundHandler.java Fix javadoc issues 2017-02-22 07:31:07 +01:00
SingleThreadEventLoop.java Ability to run a task at the end of an eventloop iteration. 2016-07-12 10:22:15 +02:00
SucceededChannelFuture.java Fix most inspector warnings 2014-07-02 19:55:07 +09:00
ThreadPerChannelEventLoop.java Add a EventLoopGroup.register(ChannelPromise) 2016-05-21 18:40:17 +02:00
ThreadPerChannelEventLoopGroup.java Set some StackTraceElement on pre-instantiated static exceptions 2016-06-20 11:33:05 +02:00
VoidChannelPromise.java [#2618] Introduce ChannelPromise.unvoid() and ChannelFuture.isVoid() 2014-07-03 14:17:12 +02:00
WriteBufferWaterMark.java fix one java doc issue: extra } 2016-04-08 09:47:26 +02:00