[ https://issues.apache.org/jira/browse/QPID-7186?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15228407#comment-15228407 ]
ASF subversion and git services commented on QPID-7186: ------------------------------------------------------- Commit 1737992 from [~k-wall] in branch 'java/trunk' [ https://svn.apache.org/r1737992 ] QPID-7186: [Java Broker] Iterate any selected keys before potentially cancelling the accepting port's key. > CancelledKeyException from the accepting thread during Broker shutdown > ---------------------------------------------------------------------- > > Key: QPID-7186 > URL: https://issues.apache.org/jira/browse/QPID-7186 > Project: Qpid > Issue Type: Bug > Components: Java Broker > Affects Versions: qpid-java-6.0.1 > Reporter: Keith Wall > Assignee: Keith Wall > Priority: Minor > Fix For: qpid-java-6.0.2, qpid-java-6.1 > > > The following failure occurred during an Apache CI run: > https://builds.apache.org/view/M-R/view/Qpid/job/Qpid-Java-Java-MMS-6.0.x-TestMatrix/lastCompletedBuild/jdk=JDK%201.7%20(latest),label=Ubuntu,profile=java-mms.0-10/artifact/6.0.x/systests/target/surefire-reports/TEST-org.apache.qpid.transport.ProtocolNegotiationTest.testWrongProtocolHeaderSent_BrokerRespondsWithSupportedProtocol.txt > The error occurred during the Broker shutdown. The SelectorThread had > cancelled the key corresponding to the accepting port, and then failed when > iterating the previously returned selector keys > ({{SelectorThread.SelectionTask#processSelectionKeys}}) . > We can tell from the logs that no connections existed to the Broker at the > point of shutdown, so the only key registered on the selector must have been > the accepting port. > It seems that the Broker must has received a incoming connection to the > accepting port around the time of shutdown and this meant that the selector > returned the acceptor as just of the selected set. This was then processed > after the key was cancelled, causing the exception. > {noformat} > 2016-04-05 21:35:48,683 DEBUG [Selector-Port-amqp] > o.a.q.s.t.SelectorThread Cancelling selector on accepting port > /0:0:0:0:0:0:0:0:15672 > ... > 2016-04-05 21:35:48,706 ERROR [Selector-Port-amqp] > o.a.q.t.u.InternalBrokerHolder Uncaught exception from thread > Selector-Port-amqp > java.nio.channels.CancelledKeyException: null > at sun.nio.ch.SelectionKeyImpl.ensureValid(SelectionKeyImpl.java:73) > ~[na:1.7.0_80] > at sun.nio.ch.SelectionKeyImpl.readyOps(SelectionKeyImpl.java:87) > ~[na:1.7.0_80] > at java.nio.channels.SelectionKey.isAcceptable(SelectionKey.java:360) > ~[na:1.7.0_80] > at > org.apache.qpid.server.transport.SelectorThread$SelectionTask.processSelectionKeys(SelectorThread.java:167) > ~[qpid-broker-core-6.0.2-SNAPSHOT.jar:6.0.2-SNAPSHOT] > at > org.apache.qpid.server.transport.SelectorThread$SelectionTask.performSelect(SelectorThread.java:306) > ~[qpid-broker-core-6.0.2-SNAPSHOT.jar:6.0.2-SNAPSHOT] > at > org.apache.qpid.server.transport.SelectorThread$SelectionTask.run(SelectorThread.java:87) > ~[qpid-broker-core-6.0.2-SNAPSHOT.jar:6.0.2-SNAPSHOT] > at > org.apache.qpid.server.transport.SelectorThread.run(SelectorThread.java:463) > ~[qpid-broker-core-6.0.2-SNAPSHOT.jar:6.0.2-SNAPSHOT] > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) > ~[na:1.7.0_80] > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) > ~[na:1.7.0_80] > at java.lang.Thread.run(Thread.java:745) ~[na:1.7.0_80] > {noformat} > This defect is not likely to cause impact to a production user. -- This message was sent by Atlassian JIRA (v6.3.4#6332) --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@qpid.apache.org For additional commands, e-mail: dev-h...@qpid.apache.org