[
https://issues.apache.org/jira/browse/NIFI-10277?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17570981#comment-17570981
]
Joe Witt commented on NIFI-10277:
---------------------------------
will keep an eye on this and review/merge. Dont want this tripping up our RC
builds
> Intermittent Failures in ConnectionLoadBalanceServerTest
> --------------------------------------------------------
>
> Key: NIFI-10277
> URL: https://issues.apache.org/jira/browse/NIFI-10277
> Project: Apache NiFi
> Issue Type: Improvement
> Components: Core Framework
> Reporter: David Handermann
> Assignee: David Handermann
> Priority: Minor
> Fix For: 1.17.0
>
>
> The {{ConnectionLoadBalanceServerTest}} fails intermittently on automated
> builds, including the recent failure on a Windows build:
> {noformat}
> Error:
> org.apache.nifi.controller.queue.clustered.server.ConnectionLoadBalanceServerTest.testRequestPeerListShouldUseTLS
> Time elapsed: 0.748 s <<< ERROR!
> java.io.IOException: Could not begin listening for incoming connections in
> order to load balance data across the cluster. Please verify the values of
> the 'nifi.cluster.load.balance.port' and 'nifi.cluster.load.balance.host'
> properties as well as the 'nifi.security.*' properties
> at
> org.apache.nifi.controller.queue.clustered.server.ConnectionLoadBalanceServer.start(ConnectionLoadBalanceServer.java:86)
> at
> org.apache.nifi.controller.queue.clustered.server.ConnectionLoadBalanceServer$start.call(Unknown
> Source)
> at
> org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:47)
> at
> org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:125)
> at
> org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:130)
> at
> org.apache.nifi.controller.queue.clustered.server.ConnectionLoadBalanceServerTest.testRequestPeerListShouldUseTLS(ConnectionLoadBalanceServerTest.groovy:77)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:498)
> at
> org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59)
> at
> org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
> at
> org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:56)
> at
> org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
> at
> org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
> at
> org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
> at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
> at
> org.junit.runners.BlockJUnit4ClassRunner$1.evaluate(BlockJUnit4ClassRunner.java:100)
> at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:366)
> at
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:103)
> at
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:63)
> at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
> at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)
> at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)
> at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)
> at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)
> at
> org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
> at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
> at org.junit.runners.ParentRunner.run(ParentRunner.java:413)
> at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
> at org.junit.runner.JUnitCore.run(JUnitCore.java:115)
> at
> org.junit.vintage.engine.execution.RunnerExecutor.execute(RunnerExecutor.java:42)
> at
> org.junit.vintage.engine.VintageTestEngine.executeAllChildren(VintageTestEngine.java:80)
> at
> org.junit.vintage.engine.VintageTestEngine.execute(VintageTestEngine.java:72)
> at
> org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:107)
> at
> org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:88)
> at
> org.junit.platform.launcher.core.EngineExecutionOrchestrator.lambda$execute$0(EngineExecutionOrchestrator.java:54)
> at
> org.junit.platform.launcher.core.EngineExecutionOrchestrator.withInterceptedStreams(EngineExecutionOrchestrator.java:67)
> at
> org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:52)
> at
> org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:114)
> at
> org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:86)
> at
> org.junit.platform.launcher.core.DefaultLauncherSession$DelegatingLauncher.execute(DefaultLauncherSession.java:86)
> at
> org.apache.maven.surefire.junitplatform.LazyLauncher.execute(LazyLauncher.java:55)
> at
> org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.execute(JUnitPlatformProvider.java:223)
> at
> org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.invokeAllTests(JUnitPlatformProvider.java:175)
> at
> org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.invoke(JUnitPlatformProvider.java:139)
> at
> org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:456)
> at
> org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:169)
> at
> org.apache.maven.surefire.booter.ForkedBooter.run(ForkedBooter.java:595)
> at
> org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:581)
> Caused by: java.net.BindException: Address already in use: JVM_Bind
> at java.net.DualStackPlainSocketImpl.bind0(Native Method)
> at
> java.net.DualStackPlainSocketImpl.socketBind(DualStackPlainSocketImpl.java:106)
> at
> java.net.AbstractPlainSocketImpl.bind(AbstractPlainSocketImpl.java:387)
> at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:190)
> at java.net.ServerSocket.bind(ServerSocket.java:395)
> at java.net.ServerSocket.<init>(ServerSocket.java:257)
> at javax.net.ssl.SSLServerSocket.<init>(SSLServerSocket.java:181)
> at
> sun.security.ssl.SSLServerSocketImpl.<init>(SSLServerSocketImpl.java:78)
> at
> sun.security.ssl.SSLServerSocketFactoryImpl.createServerSocket(SSLServerSocketFactoryImpl.java:87)
> at
> org.apache.nifi.controller.queue.clustered.server.ConnectionLoadBalanceServer.createServerSocket(ConnectionLoadBalanceServer.java:120)
> at
> org.apache.nifi.controller.queue.clustered.server.ConnectionLoadBalanceServer.start(ConnectionLoadBalanceServer.java:84)
> {noformat}
> Among potential improvements, the test class uses a static port number, which
> should be changed to a dynamic available port number for better stability.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)