CancelledKeyException during shutdown


(James Cook-2) #1

I am running 0.16.0 and I started getting this exception at shutdown. Just
wondering if I am maybe shutting down improperly?

20:12:42,904 DEBUG ker #4-1 ket.nio.SelectorUtil: 74 -
CancelledKeyException raised by a Selector - JDK bug?
java.nio.channels.CancelledKeyException
at sun.nio.ch.SelectionKeyImpl.ensureValid(SelectionKeyImpl.java:55)
at sun.nio.ch.SelectionKeyImpl.readyOps(SelectionKeyImpl.java:69)
at
sun.nio.ch.KQueueSelectorImpl.updateSelectedKeys(KQueueSelectorImpl.java:105)
at sun.nio.ch.KQueueSelectorImpl.doSelect(KQueueSelectorImpl.java:74)
at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:69)
at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:80)
at
org.elasticsearch.common.netty.channel.socket.nio.SelectorUtil.select(SelectorUtil.java:38)
at
org.elasticsearch.common.netty.channel.socket.nio.NioWorker.run(NioWorker.java:163)
at
org.elasticsearch.common.netty.util.ThreadRenamingRunnable.run(ThreadRenamingRunnable.java:108)
at
org.elasticsearch.common.netty.util.internal.DeadLockProofWorker$1.run(DeadLockProofWorker.java:44)
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:680)

I am only calling _server.close() at the moment. Should I be calling
close() on any clients also or doing something else?


(Shay Banon) #2

No need to worry, seems like netty missed handling this case. Calling close on the node is enough.
On Monday, May 9, 2011 at 3:17 AM, James Cook wrote:

I am running 0.16.0 and I started getting this exception at shutdown. Just wondering if I am maybe shutting down improperly?

20:12:42,904 DEBUG ker #4-1 ket.nio.SelectorUtil: 74 - CancelledKeyException raised by a Selector - JDK bug?
java.nio.channels.CancelledKeyException
at sun.nio.ch.SelectionKeyImpl.ensureValid(SelectionKeyImpl.java:55)
at sun.nio.ch.SelectionKeyImpl.readyOps(SelectionKeyImpl.java:69)
at sun.nio.ch.KQueueSelectorImpl.updateSelectedKeys(KQueueSelectorImpl.java:105)
at sun.nio.ch.KQueueSelectorImpl.doSelect(KQueueSelectorImpl.java:74)
at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:69)
at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:80)
at org.elasticsearch.common.netty.channel.socket.nio.SelectorUtil.select(SelectorUtil.java:38)
at org.elasticsearch.common.netty.channel.socket.nio.NioWorker.run(NioWorker.java:163)
at org.elasticsearch.common.netty.util.ThreadRenamingRunnable.run(ThreadRenamingRunnable.java:108)
at org.elasticsearch.common.netty.util.internal.DeadLockProofWorker$1.run(DeadLockProofWorker.java:44)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:680)

I am only calling _server.close() at the moment. Should I be calling close() on any clients also or doing something else?


(system) #3