In the past, I've observed application testing infrastructure (on VMs) hang due to depletion of available entropy for RNG. VMs seem especially susceptible to this. Our stopgap solution was to use haveged to make sufficient entropy available to meet the needs of the test suite.
In this case, a refactor of the test would probably be a better alternative. Your observation on behavior in your environment with haveged will help inform that decision. On Mon, Jul 29, 2024 at 10:14 AM Dan S <dsti...@gmail.com> wrote: > Yes I have a VM on an EC2 instance in AWS. > > On Mon, Jul 29, 2024 at 10:10 AM Paul Grey <grey...@gmail.com> wrote: > > > Is this by chance a virtual machine you are on? > > > > > > > https://www.exoscale.com/syslog/random-numbers-generation-in-virtual-machines/ > > > > TL;DR: try installing haveged > > > > > > On Mon, Jul 29, 2024 at 9:29 AM Dan S <dsti...@gmail.com> wrote: > > > > > So I see the problem line is > > > at > > > > > > > > > org.apache.nifi.processors.elasticsearch.PutElasticsearchJsonTest.testLargeInputStringHandling(PutElasticsearchJsonTest.java:471) > > > and that line has > > > final String val = String.format("{\"large\": \"%s\"}", > > > RandomStringUtils.randomAlphanumeric(10000)); > > > > > > I am not sure though what is making the process hang. > > > > > > On Mon, Jul 29, 2024 at 9:11 AM Dan S <dsti...@gmail.com> wrote: > > > > > > > Thanks Joe for the tip. Here is what I have > > > > for org.apache.maven.surefire.booter.ForkedBooter though I am not > sure > > > what > > > > to make of it. > > > > > > > > "main" #1 [23885] prio=5 os_prio=0 cpu=1694.03ms elapsed=158.14s > > > > tid=0x00007f1070028ec0 nid=23885 runnable [0x00007f1077b78000] > > > > java.lang.Thread.State: RUNNABLE > > > > at java.io.FileInputStream.readBytes(java.base@21.0.3/Native > > > > Method) > > > > at java.io.FileInputStream.read(java.base@21.0.3 > > > > /FileInputStream.java:287) > > > > at java.io.FilterInputStream.read(java.base@21.0.3 > > > > /FilterInputStream.java:119) > > > > at > > > > sun.security.provider.NativePRNG$RandomIO.readFully(java.base@21.0.3 > > > > /NativePRNG.java:426) > > > > at > > > > > > > > > > sun.security.provider.NativePRNG$RandomIO.ensureBufferValid(java.base@21.0.3 > > > > /NativePRNG.java:529) > > > > at > > > > > > sun.security.provider.NativePRNG$RandomIO.implNextBytes(java.base@21.0.3 > > > > /NativePRNG.java:548) > > > > - locked <0x00000007107e1a88> (a java.lang.Object) > > > > at > > > > > > > > > > sun.security.provider.NativePRNG$Blocking.engineNextBytes(java.base@21.0.3 > > > > /NativePRNG.java:270) > > > > at java.security.SecureRandom.nextBytes(java.base@21.0.3 > > > > /SecureRandom.java:768) > > > > at > > > > > > > > > > org.apache.commons.lang3.CachedRandomBits.<init>(CachedRandomBits.java:67) > > > > at > > > > > > > > > > org.apache.commons.lang3.RandomStringUtils.random(RandomStringUtils.java:290) > > > > at > > > > > > > > > > org.apache.commons.lang3.RandomStringUtils.random(RandomStringUtils.java:249) > > > > at > > > > > > > > > > org.apache.commons.lang3.RandomStringUtils.random(RandomStringUtils.java:147) > > > > at > > > > > > > > > > org.apache.commons.lang3.RandomStringUtils.random(RandomStringUtils.java:107) > > > > at > > > > > > > > > > org.apache.commons.lang3.RandomStringUtils.randomAlphanumeric(RandomStringUtils.java:402) > > > > at > > > > > > > > > > org.apache.nifi.processors.elasticsearch.PutElasticsearchJsonTest.testLargeInputStringHandling(PutElasticsearchJsonTest.java:471) > > > > at > > > > > > > > > > java.lang.invoke.LambdaForm$DMH/0x00007f0ffc131000.invokeVirtual(java.base@21.0.3 > > > > /LambdaForm$DMH) > > > > at > > > > > > java.lang.invoke.LambdaForm$MH/0x00007f0ffc131800.invoke(java.base@21.0.3 > > > > /LambdaForm$MH) > > > > at > > > java.lang.invoke.Invokers$Holder.invokeExact_MT(java.base@21.0.3 > > > > /Invokers$Holder) > > > > at > > > > > > > > > > jdk.internal.reflect.DirectMethodHandleAccessor.invokeImpl(java.base@21.0.3 > > > > /DirectMethodHandleAccessor.java:153) > > > > at > > > > > jdk.internal.reflect.DirectMethodHandleAccessor.invoke(java.base@21.0.3 > > > > /DirectMethodHandleAccessor.java:103) > > > > at java.lang.reflect.Method.invoke(java.base@21.0.3 > > > > /Method.java:580) > > > > at > > > > > > > > > > org.junit.platform.commons.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:728) > > > > at > > > > > > > > > > org.junit.jupiter.engine.execution.MethodInvocation.proceed(MethodInvocation.java:60) > > > > at > > > > > > > > > > org.junit.jupiter.engine.execution.InvocationInterceptorChain$ValidatingInvocation.proceed(InvocationInterceptorChain.java:131) > > > > at > > > > > > > > > > org.junit.jupiter.engine.extension.TimeoutExtension.intercept(TimeoutExtension.java:156) > > > > at > > > > > > > > > > org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestableMethod(TimeoutExtension.java:147) > > > > at > > > > > > > > > > org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestMethod(TimeoutExtension.java:86) > > > > at > > > > > > > > > > org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor$$Lambda/0x00007f0ffc0ab128.apply(Unknown > > > > Source) > > > > at > > > > > > > > > > org.junit.jupiter.engine.execution.InterceptingExecutableInvoker$ReflectiveInterceptorCall.lambda$ofVoidMethod$0(InterceptingExecutableInvoker.java:103) > > > > at > > > > > > > > > > org.junit.jupiter.engine.execution.InterceptingExecutableInvoker$ReflectiveInterceptorCall$$Lambda/0x00007f0ffc0ab538.apply(Unknown > > > > Source) > > > > at > > > > > > > > > > org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.lambda$invoke$0(InterceptingExecutableInvoker.java:93) > > > > at > > > > > > > > > > org.junit.jupiter.engine.execution.InterceptingExecutableInvoker$$Lambda/0x00007f0ffc0de488.apply(Unknown > > > > Source) > > > > at > > > > > > > > > > org.junit.jupiter.engine.execution.InvocationInterceptorChain$InterceptedInvocation.proceed(InvocationInterceptorChain.java:106) > > > > at > > > > > > > > > > org.junit.jupiter.engine.execution.InvocationInterceptorChain.proceed(InvocationInterceptorChain.java:64) > > > > at > > > > > > > > > > org.junit.jupiter.engine.execution.InvocationInterceptorChain.chainAndInvoke(InvocationInterceptorChain.java:45) > > > > at > > > > > > > > > > org.junit.jupiter.engine.execution.InvocationInterceptorChain.invoke(InvocationInterceptorChain.java:37) > > > > at > > > > > > > > > > org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.invoke(InterceptingExecutableInvoker.java:92) > > > > at > > > > > > > > > > org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.invoke(InterceptingExecutableInvoker.java:86) > > > > at > > > > > > > > > > org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.lambda$invokeTestMethod$7(TestMethodTestDescriptor.java:218) > > > > at > > > > > > > > > > org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor$$Lambda/0x00007f0ffc19e2e0.execute(Unknown > > > > Source) > > > > at > > > > > > > > > > org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) > > > > at > > > > > > > > > > org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.invokeTestMethod(TestMethodTestDescriptor.java:214) > > > > at > > > > > > > > > > org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:139) > > > > at > > > > > > > > > > org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:69) > > > > at > > > > > > > > > > org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:151) > > > > at > > > > > > > > > > org.junit.platform.engine.support.hierarchical.NodeTestTask$$Lambda/0x00007f0ffc0cbd90.execute(Unknown > > > > Source) > > > > at > > > > > > > > > > org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) > > > > at > > > > > > > > > > org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141) > > > > at > > > > > > > > > > org.junit.platform.engine.support.hierarchical.NodeTestTask$$Lambda/0x00007f0ffc0cbb70.invoke(Unknown > > > > Source) > > > > at > > > > > > org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137) > > > > at > > > > > > > > > > org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139) > > > > at > > > > > > > > > > org.junit.platform.engine.support.hierarchical.NodeTestTask$$Lambda/0x00007f0ffc0cb758.execute(Unknown > > > > Source) > > > > at > > > > > > > > > > org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) > > > > at > > > > > > > > > > org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138) > > > > at > > > > > > > > > > org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95) > > > > at > > > > > > > > > > org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService$$Lambda/0x00007f0ffc0cc880.accept(Unknown > > > > Source) > > > > at java.util.ArrayList.forEach(java.base@21.0.3 > > > > /ArrayList.java:1596) > > > > at > > > > > > > > > > org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll(SameThreadHierarchicalTestExecutorService.java:41) > > > > at > > > > > > > > > > org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:155) > > > > at > > > > > > > > > > org.junit.platform.engine.support.hierarchical.NodeTestTask$$Lambda/0x00007f0ffc0cbd90.execute(Unknown > > > > Source) > > > > at > > > > > > > > > > org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) > > > > at > > > > > > > > > > org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141) > > > > at > > > > > > > > > > org.junit.platform.engine.support.hierarchical.NodeTestTask$$Lambda/0x00007f0ffc0cbb70.invoke(Unknown > > > > Source) > > > > at > > > > > > org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137) > > > > at > > > > > > > > > > org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139) > > > > at > > > > > > > > > > org.junit.platform.engine.support.hierarchical.NodeTestTask$$Lambda/0x00007f0ffc0cb758.execute(Unknown > > > > Source) > > > > at > > > > > > > > > > org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) > > > > at > > > > > > > > > > org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138) > > > > at > > > > > > > > > > org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95) > > > > at > > > > > > > > > > org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService$$Lambda/0x00007f0ffc0cc880.accept(Unknown > > > > Source) > > > > at java.util.ArrayList.forEach(java.base@21.0.3 > > > > /ArrayList.java:1596) > > > > at > > > > > > > > > > org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll(SameThreadHierarchicalTestExecutorService.java:41) > > > > at > > > > > > > > > > org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:155) > > > > at > > > > > > > > > > org.junit.platform.engine.support.hierarchical.NodeTestTask$$Lambda/0x00007f0ffc0cbd90.execute(Unknown > > > > Source) > > > > at > > > > > > > > > > org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) > > > > at > > > > > > > > > > org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141) > > > > at > > > > > > > > > > org.junit.platform.engine.support.hierarchical.NodeTestTask$$Lambda/0x00007f0ffc0cbb70.invoke(Unknown > > > > Source) > > > > at > > > > > > org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137) > > > > at > > > > > > > > > > org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139) > > > > at > > > > > > > > > > org.junit.platform.engine.support.hierarchical.NodeTestTask$$Lambda/0x00007f0ffc0cb758.execute(Unknown > > > > Source) > > > > at > > > > > > > > > > org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) > > > > at > > > > > > > > > > org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138) > > > > at > > > > > > > > > > org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95) > > > > at > > > > > > > > > > org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.submit(SameThreadHierarchicalTestExecutorService.java:35) > > > > at > > > > > > > > > > org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.execute(HierarchicalTestExecutor.java:57) > > > > at > > > > > > > > > > org.junit.platform.engine.support.hierarchical.HierarchicalTestEngine.execute(HierarchicalTestEngine.java:54) > > > > at > > > > > > > > > > org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:198) > > > > at > > > > > > > > > > org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:169) > > > > at > > > > > > > > > > org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:93) > > > > at > > > > > > > > > > org.junit.platform.launcher.core.EngineExecutionOrchestrator.lambda$execute$0(EngineExecutionOrchestrator.java:58) > > > > at > > > > > > > > > > org.junit.platform.launcher.core.EngineExecutionOrchestrator$$Lambda/0x00007f0ffc0b5958.accept(Unknown > > > > Source) > > > > at > > > > > > > > > > org.junit.platform.launcher.core.EngineExecutionOrchestrator.withInterceptedStreams(EngineExecutionOrchestrator.java:141) > > > > at > > > > > > > > > > org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:57) > > > > at > > > > > > > > > > org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:103) > > > > at > > > > > > > > > > org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:85) > > > > at > > > > > > > > > > org.junit.platform.launcher.core.DelegatingLauncher.execute(DelegatingLauncher.java:47) > > > > at > > > > > > > > > > org.apache.maven.surefire.junitplatform.LazyLauncher.execute(LazyLauncher.java:56) > > > > at > > > > > > > > > > org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.execute(JUnitPlatformProvider.java:184) > > > > at > > > > > > > > > > org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.invokeAllTests(JUnitPlatformProvider.java:148) > > > > at > > > > > > > > > > org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.invoke(JUnitPlatformProvider.java:122) > > > > at > > > > > > > > > > org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:385) > > > > at > > > > > > > > > > org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:162) > > > > at > > > > > > org.apache.maven.surefire.booter.ForkedBooter.run(ForkedBooter.java:507) > > > > at > > > > > > org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:495) > > > > > > > > On Sun, Jul 28, 2024 at 5:34 PM Joe Witt <joe.w...@gmail.com> wrote: > > > > > > > >> Dan > > > >> > > > >> You can get a couple thread dumps during the build being in a hung > > state > > > >> and that may be quite informative. > > > >> > > > >> Thanks > > > >> > > > >> On Sun, Jul 28, 2024 at 2:27 PM Dan S <dsti...@gmail.com> wrote: > > > >> > > > >> > Maven home: /opt/apache-maven-3.9.6 Java version: 21.0.3, vendor: > > Red > > > >> Hat, > > > >> > Inc., runtime: > /usr/lib/jvm/java-21-openjdk-21.0.3.0.9-1.el8.x86_64 > > > >> Default > > > >> > locale: en_US, platform encoding: UTF-8 OS name: "linux", version: > > > >> > "4.18.0-513.24.1.el8_9.x86_64", arch: "amd64", family: "unix" > > > >> > > > > >> > The command I am running is from top level directory > > > >> > ./mvnw -Pcontrib-check > > > >> > > > > >> > > > > >> > On Sat, Jul 27, 2024 at 12:37 PM Chris Sampson > > > >> > <chris.samp...@naimuri.com.invalid> wrote: > > > >> > > > > >> > > Can you provide more information, such as: > > > >> > > what command(s) are you running to build? > > > >> > > what versions of Java & Maven in what OS? > > > >> > > what error(s) are you seeing resulting in the failure? > > > >> > > > > > >> > > > > > >> > > Cheers, > > > >> > > > > > >> > > --- > > > >> > > Chris Sampson > > > >> > > IT Consultant > > > >> > > chris.samp...@naimuri.com > > > >> > > > > > >> > > > > > >> > > > On 26 Jul 2024, at 21:49, Dan S <dsti...@gmail.com> wrote: > > > >> > > > > > > >> > > > I am currently working on a feature branch for NIFI-12709 > > > >> > > > <https://issues.apache.org/jira/browse/NIFI-12709>. > > > >> > > > I currently rebased from main where the latest commit was > > > >> > > > 2f73ced5a6dad469fb1942cfe9a6ac61031436a4 > > > >> > > > > > > >> > > > I consistently cannot build anymore as the build keeps on > > hanging > > > >> when > > > >> > > > running > > > >> > > > org.apache.nifi.processors.elasticsearch.PutElasticsearchJsonTest > > > >> > > > I have wiped out my local maven repo but I still am having the > > > >> problem. > > > >> > > > Is anyone else having this issue? Any suggestions on what I > can > > > do? > > > >> > > > > > >> > > > > > >> > > > > >> > > > > > > > > > >