[ https://issues.apache.org/jira/browse/KAFKA-3453?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15210176#comment-15210176 ]
ASF GitHub Bot commented on KAFKA-3453: --------------------------------------- GitHub user ijuma opened a pull request: https://github.com/apache/kafka/pull/1131 KAFKA-3453; Transient test failures due to MiniKDC port allocation strategy Temporarily copy fixed `MiniKdc` class until `MiniKdc` 2.8.0 is released. You can merge this pull request into a Git repository by running: $ git pull https://github.com/ijuma/kafka kafka-3453-transient-test-failures-mini-kdc-port Alternatively you can review and apply these changes as the patch at: https://github.com/apache/kafka/pull/1131.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #1131 ---- commit ee5890c4a15fffc7c1d155e938d2541fcf8fd790 Author: Ismael Juma <ism...@juma.me.uk> Date: 2016-03-24T12:01:46Z KAFKA-3453; Transient test failures due to MiniKDC port allocation strategy Temporarily copy fixed `MiniKdc` class until `MiniKdc` 2.8.0 is released. ---- > Transient test failures due to MiniKDC port allocation strategy > --------------------------------------------------------------- > > Key: KAFKA-3453 > URL: https://issues.apache.org/jira/browse/KAFKA-3453 > Project: Kafka > Issue Type: Bug > Affects Versions: 0.9.0.1 > Reporter: Ewen Cheslack-Postava > Assignee: Ismael Juma > Fix For: 0.10.0.1 > > > A number of tests, especially our consumer tests, fail transiently because > MiniKDC allocates ports by creating a socket, getting its port, then closing > it. As previously addressed in our own code, this causes problems because > that port can be reallocated before the process has a chance to bind a new > socket -- whether due to another test running in parallel or another process > simply binding the port first. This results in errors like this in the tests: > {quote} > java.net.BindException: Address already in use > at sun.nio.ch.Net.bind0(Native Method) > at sun.nio.ch.Net.bind(Net.java:444) > at sun.nio.ch.Net.bind(Net.java:436) > at > sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:214) > at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:74) > at > org.apache.mina.transport.socket.nio.NioSocketAcceptor.open(NioSocketAcceptor.java:198) > at > org.apache.mina.transport.socket.nio.NioSocketAcceptor.open(NioSocketAcceptor.java:51) > at > org.apache.mina.core.polling.AbstractPollingIoAcceptor.registerHandles(AbstractPollingIoAcceptor.java:547) > at > org.apache.mina.core.polling.AbstractPollingIoAcceptor.access$400(AbstractPollingIoAcceptor.java:68) > at > org.apache.mina.core.polling.AbstractPollingIoAcceptor$Acceptor.run(AbstractPollingIoAcceptor.java:422) > at > org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) > at java.lang.Thread.run(Thread.java:745) > {quote} > This is an ongoing issue that Confluent sees in its Jenkins builds, which is > the reason for this ticket. The real issue is actually in MiniKDC (we pass in > "0" for the port, but then it uses this other port allocation strategy), but > we either need to a) figure out a workaround or b) get a fix in upstream and > then update to a newer MiniKDC version. -- This message was sent by Atlassian JIRA (v6.3.4#6332)