Details
-
Sub-task
-
Status: Open
-
Major
-
Resolution: Unresolved
-
None
-
None
-
None
-
None
Description
There are test failures due to zero copy buffer leaks, see https://github.com/duongkame/ratis/actions/runs/8351812136.
Looks like this is because the retained log entries in SimpleStateMachine4Testing cache are not released. Probably because the state machine is not closed.
Advance traces:
Creation trace: org.apache.ratis.util.ReferenceCountedObject.wrap(ReferenceCountedObject.java:170) org.apache.ratis.grpc.server.GrpcClientProtocolService$RequestStreamObserver.onNext(GrpcClientProtocolService.java:274) org.apache.ratis.grpc.server.GrpcClientProtocolService$RequestStreamObserver.onNext(GrpcClientProtocolService.java:199) org.apache.ratis.thirdparty.io.grpc.stub.ServerCalls$StreamingServerCallHandler$StreamingServerCallListener.onMessage(ServerCalls.java:262) org.apache.ratis.thirdparty.io.grpc.internal.ServerCallImpl$ServerStreamListenerImpl.messagesAvailableInternal(ServerCallImpl.java:329) org.apache.ratis.thirdparty.io.grpc.internal.ServerCallImpl$ServerStreamListenerImpl.messagesAvailable(ServerCallImpl.java:314) org.apache.ratis.thirdparty.io.grpc.internal.ServerImpl$JumpToApplicationThreadServerStreamListener$1MessagesAvailable.runInContext(ServerImpl.java:833) org.apache.ratis.thirdparty.io.grpc.internal.ContextRunnable.run(ContextRunnable.java:37) org.apache.ratis.thirdparty.io.grpc.internal.SerializingExecutor.run(SerializingExecutor.java:133) java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) java.lang.Thread.run(Thread.java:750)Retain traces(13): org.apache.ratis.grpc.server.GrpcClientProtocolService$UnorderedRequestStreamObserver.processClientRequest(GrpcClientProtocolService.java:319) org.apache.ratis.grpc.server.GrpcClientProtocolService$RequestStreamObserver.onNext(GrpcClientProtocolService.java:280) org.apache.ratis.grpc.server.GrpcClientProtocolService$RequestStreamObserver.onNext(GrpcClientProtocolService.java:199) org.apache.ratis.thirdparty.io.grpc.stub.ServerCalls$StreamingServerCallHandler$StreamingServerCallListener.onMessage(ServerCalls.java:262) org.apache.ratis.thirdparty.io.grpc.internal.ServerCallImpl$ServerStreamListenerImpl.messagesAvailableInternal(ServerCallImpl.java:329) org.apache.ratis.thirdparty.io.grpc.internal.ServerCallImpl$ServerStreamListenerImpl.messagesAvailable(ServerCallImpl.java:314) org.apache.ratis.thirdparty.io.grpc.internal.ServerImpl$JumpToApplicationThreadServerStreamListener$1MessagesAvailable.runInContext(ServerImpl.java:833) org.apache.ratis.thirdparty.io.grpc.internal.ContextRunnable.run(ContextRunnable.java:37) org.apache.ratis.thirdparty.io.grpc.internal.SerializingExecutor.run(SerializingExecutor.java:133) java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) java.lang.Thread.run(Thread.java:750)org.apache.ratis.server.impl.RaftServerProxy.submitClientRequestAsync(RaftServerProxy.java:450) org.apache.ratis.grpc.server.GrpcClientProtocolService$RequestStreamObserver.processClientRequest(GrpcClientProtocolService.java:256) org.apache.ratis.grpc.server.GrpcClientProtocolService$UnorderedRequestStreamObserver.processClientRequest(GrpcClientProtocolService.java:322) org.apache.ratis.grpc.server.GrpcClientProtocolService$RequestStreamObserver.onNext(GrpcClientProtocolService.java:280) org.apache.ratis.grpc.server.GrpcClientProtocolService$RequestStreamObserver.onNext(GrpcClientProtocolService.java:199) org.apache.ratis.thirdparty.io.grpc.stub.ServerCalls$StreamingServerCallHandler$StreamingServerCallListener.onMessage(ServerCalls.java:262) org.apache.ratis.thirdparty.io.grpc.internal.ServerCallImpl$ServerStreamListenerImpl.messagesAvailableInternal(ServerCallImpl.java:329) org.apache.ratis.thirdparty.io.grpc.internal.ServerCallImpl$ServerStreamListenerImpl.messagesAvailable(ServerCallImpl.java:314) org.apache.ratis.thirdparty.io.grpc.internal.ServerImpl$JumpToApplicationThreadServerStreamListener$1MessagesAvailable.runInContext(ServerImpl.java:833) org.apache.ratis.thirdparty.io.grpc.internal.ContextRunnable.run(ContextRunnable.java:37) org.apache.ratis.thirdparty.io.grpc.internal.SerializingExecutor.run(SerializingExecutor.java:133) java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) java.lang.Thread.run(Thread.java:750)org.apache.ratis.server.impl.RaftServerImpl.submitClientRequestAsync(RaftServerImpl.java:887) org.apache.ratis.server.impl.RaftServerImpl.lambda$executeSubmitClientRequestAsync$12(RaftServerImpl.java:881) java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1604) java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) java.lang.Thread.run(Thread.java:750)org.apache.ratis.util.ReferenceCountedObject$3.retain(ReferenceCountedObject.java:144) org.apache.ratis.server.raftlog.segmented.SegmentedRaftLog.appendEntryImpl(SegmentedRaftLog.java:425) org.apache.ratis.server.raftlog.RaftLogBase.lambda$appendEntry$11(RaftLogBase.java:361) org.apache.ratis.server.raftlog.RaftLogSequentialOps$Runner.runSequentially(RaftLogSequentialOps.java:80) org.apache.ratis.server.raftlog.RaftLogBase.appendEntry(RaftLogBase.java:361) org.apache.ratis.server.raftlog.RaftLogBase.appendImpl(RaftLogBase.java:191) org.apache.ratis.server.raftlog.RaftLogBase.lambda$append$2(RaftLogBase.java:164) org.apache.ratis.server.raftlog.RaftLogSequentialOps$Runner.runSequentially(RaftLogSequentialOps.java:71) org.apache.ratis.server.raftlog.RaftLogBase.append(RaftLogBase.java:164) org.apache.ratis.server.impl.ServerState.appendLog(ServerState.java:321) org.apache.ratis.server.impl.RaftServerImpl.appendTransaction(RaftServerImpl.java:808) org.apache.ratis.server.impl.RaftServerImpl.writeAsync(RaftServerImpl.java:969) org.apache.ratis.server.impl.RaftServerImpl.replyFuture(RaftServerImpl.java:929) org.apache.ratis.server.impl.RaftServerImpl.submitClientRequestAsync(RaftServerImpl.java:902) org.apache.ratis.server.impl.RaftServerImpl.lambda$executeSubmitClientRequestAsync$12(RaftServerImpl.java:881) java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1604) java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) java.lang.Thread.run(Thread.java:750)org.apache.ratis.util.ReferenceCountedObject$3.retain(ReferenceCountedObject.java:144) org.apache.ratis.server.raftlog.segmented.LogSegment.append(LogSegment.java:352) org.apache.ratis.server.raftlog.segmented.LogSegment.appendToOpenSegment(LogSegment.java:347) org.apache.ratis.server.raftlog.segmented.SegmentedRaftLogCache.appendEntry(SegmentedRaftLogCache.java:606) org.apache.ratis.server.raftlog.segmented.SegmentedRaftLog.appendEntryImpl(SegmentedRaftLog.java:466) org.apache.ratis.server.raftlog.RaftLogBase.lambda$appendEntry$11(RaftLogBase.java:361) org.apache.ratis.server.raftlog.RaftLogSequentialOps$Runner.runSequentially(RaftLogSequentialOps.java:80) org.apache.ratis.server.raftlog.RaftLogBase.appendEntry(RaftLogBase.java:361) org.apache.ratis.server.raftlog.RaftLogBase.appendImpl(RaftLogBase.java:191) org.apache.ratis.server.raftlog.RaftLogBase.lambda$append$2(RaftLogBase.java:164) org.apache.ratis.server.raftlog.RaftLogSequentialOps$Runner.runSequentially(RaftLogSequentialOps.java:71) org.apache.ratis.server.raftlog.RaftLogBase.append(RaftLogBase.java:164) org.apache.ratis.server.impl.ServerState.appendLog(ServerState.java:321) org.apache.ratis.server.impl.RaftServerImpl.appendTransaction(RaftServerImpl.java:808) org.apache.ratis.server.impl.RaftServerImpl.writeAsync(RaftServerImpl.java:969) org.apache.ratis.server.impl.RaftServerImpl.replyFuture(RaftServerImpl.java:929) org.apache.ratis.server.impl.RaftServerImpl.submitClientRequestAsync(RaftServerImpl.java:902) org.apache.ratis.server.impl.RaftServerImpl.lambda$executeSubmitClientRequestAsync$12(RaftServerImpl.java:881) java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1604) java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) java.lang.Thread.run(Thread.java:750)org.apache.ratis.util.ReferenceCountedObject$3.retain(ReferenceCountedObject.java:144) org.apache.ratis.server.raftlog.segmented.LogSegment$EntryCache.put(LogSegment.java:275) org.apache.ratis.server.raftlog.segmented.LogSegment.putEntryCache(LogSegment.java:486) org.apache.ratis.server.raftlog.segmented.LogSegment.append(LogSegment.java:356) org.apache.ratis.server.raftlog.segmented.LogSegment.appendToOpenSegment(LogSegment.java:347) org.apache.ratis.server.raftlog.segmented.SegmentedRaftLogCache.appendEntry(SegmentedRaftLogCache.java:606) org.apache.ratis.server.raftlog.segmented.SegmentedRaftLog.appendEntryImpl(SegmentedRaftLog.java:466) org.apache.ratis.server.raftlog.RaftLogBase.lambda$appendEntry$11(RaftLogBase.java:361) org.apache.ratis.server.raftlog.RaftLogSequentialOps$Runner.runSequentially(RaftLogSequentialOps.java:80) org.apache.ratis.server.raftlog.RaftLogBase.appendEntry(RaftLogBase.java:361) org.apache.ratis.server.raftlog.RaftLogBase.appendImpl(RaftLogBase.java:191) org.apache.ratis.server.raftlog.RaftLogBase.lambda$append$2(RaftLogBase.java:164) org.apache.ratis.server.raftlog.RaftLogSequentialOps$Runner.runSequentially(RaftLogSequentialOps.java:71) org.apache.ratis.server.raftlog.RaftLogBase.append(RaftLogBase.java:164) org.apache.ratis.server.impl.ServerState.appendLog(ServerState.java:321) org.apache.ratis.server.impl.RaftServerImpl.appendTransaction(RaftServerImpl.java:808) org.apache.ratis.server.impl.RaftServerImpl.writeAsync(RaftServerImpl.java:969) org.apache.ratis.server.impl.RaftServerImpl.replyFuture(RaftServerImpl.java:929) org.apache.ratis.server.impl.RaftServerImpl.submitClientRequestAsync(RaftServerImpl.java:902) org.apache.ratis.server.impl.RaftServerImpl.lambda$executeSubmitClientRequestAsync$12(RaftServerImpl.java:881) java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1604) java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) java.lang.Thread.run(Thread.java:750)org.apache.ratis.util.ReferenceCountedObject$3.retain(ReferenceCountedObject.java:144) org.apache.ratis.server.raftlog.segmented.SegmentedRaftLog.retainLog(SegmentedRaftLog.java:309) org.apache.ratis.server.raftlog.segmented.SegmentedRaftLog.getEntryWithData(SegmentedRaftLog.java:322) org.apache.ratis.server.leader.LogAppenderBase.newAppendEntriesRequest(LogAppenderBase.java:240) org.apache.ratis.grpc.server.GrpcLogAppender.appendLog(GrpcLogAppender.java:387) org.apache.ratis.grpc.server.GrpcLogAppender.run(GrpcLogAppender.java:262) org.apache.ratis.server.leader.LogAppenderDaemon.run(LogAppenderDaemon.java:80) java.lang.Thread.run(Thread.java:750)org.apache.ratis.util.ReferenceCountedObject$3.retain(ReferenceCountedObject.java:144) org.apache.ratis.server.raftlog.segmented.SegmentedRaftLog.retainLog(SegmentedRaftLog.java:309) org.apache.ratis.server.raftlog.segmented.SegmentedRaftLog.getEntryWithData(SegmentedRaftLog.java:322) org.apache.ratis.server.leader.LogAppenderBase.newAppendEntriesRequest(LogAppenderBase.java:240) org.apache.ratis.grpc.server.GrpcLogAppender.appendLog(GrpcLogAppender.java:387) org.apache.ratis.grpc.server.GrpcLogAppender.run(GrpcLogAppender.java:262) org.apache.ratis.server.leader.LogAppenderDaemon.run(LogAppenderDaemon.java:80) java.lang.Thread.run(Thread.java:750)org.apache.ratis.util.ReferenceCountedObject$3.retain(ReferenceCountedObject.java:144) org.apache.ratis.server.raftlog.segmented.SegmentedRaftLog.retainLog(SegmentedRaftLog.java:309) org.apache.ratis.server.raftlog.segmented.SegmentedRaftLog.getEntryWithData(SegmentedRaftLog.java:322) org.apache.ratis.server.leader.LogAppenderBase.newAppendEntriesRequest(LogAppenderBase.java:240) org.apache.ratis.grpc.server.GrpcLogAppender.appendLog(GrpcLogAppender.java:387) org.apache.ratis.grpc.server.GrpcLogAppender.run(GrpcLogAppender.java:262) org.apache.ratis.server.leader.LogAppenderDaemon.run(LogAppenderDaemon.java:80) java.lang.Thread.run(Thread.java:750)org.apache.ratis.util.ReferenceCountedObject$3.retain(ReferenceCountedObject.java:144) org.apache.ratis.server.raftlog.segmented.SegmentedRaftLog.retainLog(SegmentedRaftLog.java:309) org.apache.ratis.server.raftlog.segmented.SegmentedRaftLog.getEntryWithData(SegmentedRaftLog.java:322) org.apache.ratis.server.leader.LogAppenderBase.newAppendEntriesRequest(LogAppenderBase.java:240) org.apache.ratis.grpc.server.GrpcLogAppender.appendLog(GrpcLogAppender.java:387) org.apache.ratis.grpc.server.GrpcLogAppender.run(GrpcLogAppender.java:262) org.apache.ratis.server.leader.LogAppenderDaemon.run(LogAppenderDaemon.java:80) java.lang.Thread.run(Thread.java:750)org.apache.ratis.util.ReferenceCountedObject$3.retain(ReferenceCountedObject.java:144) org.apache.ratis.server.raftlog.segmented.SegmentedRaftLog.retainLog(SegmentedRaftLog.java:309) org.apache.ratis.server.impl.StateMachineUpdater.applyLog(StateMachineUpdater.java:238) org.apache.ratis.server.impl.StateMachineUpdater.run(StateMachineUpdater.java:188) java.lang.Thread.run(Thread.java:750)org.apache.ratis.util.ReferenceCountedObject$3.retain(ReferenceCountedObject.java:144) org.apache.ratis.util.ReferenceCountedObject$3.retain(ReferenceCountedObject.java:144) org.apache.ratis.statemachine.impl.SimpleStateMachine4Testing.put(SimpleStateMachine4Testing.java:203) org.apache.ratis.statemachine.impl.SimpleStateMachine4Testing.applyTransaction(SimpleStateMachine4Testing.java:254) org.apache.ratis.server.impl.RaftServerImpl.applyLogToStateMachine(RaftServerImpl.java:1825) org.apache.ratis.server.impl.StateMachineUpdater.applyLog(StateMachineUpdater.java:253) org.apache.ratis.server.impl.StateMachineUpdater.run(StateMachineUpdater.java:188) java.lang.Thread.run(Thread.java:750)org.apache.ratis.util.ReferenceCountedObject$3.retain(ReferenceCountedObject.java:144) org.apache.ratis.server.raftlog.segmented.SegmentedRaftLog.retainLog(SegmentedRaftLog.java:309) org.apache.ratis.server.raftlog.segmented.SegmentedRaftLog.get(SegmentedRaftLog.java:281) org.apache.ratis.RaftTestUtil.logEntriesContains(RaftTestUtil.java:187) org.apache.ratis.RaftTestUtil.logEntriesContains(RaftTestUtil.java:172) org.apache.ratis.RaftTestUtil.lambda$assertLogEntries$5(RaftTestUtil.java:250) java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:174) java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193) java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:175) java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193) java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:175) java.util.concurrent.ConcurrentHashMap$ValueSpliterator.forEachRemaining(ConcurrentHashMap.java:3564) java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:482) java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:472) java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708) java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) java.util.stream.LongPipeline.reduce(LongPipeline.java:461) java.util.stream.LongPipeline.sum(LongPipeline.java:419) java.util.stream.ReferencePipeline.count(ReferencePipeline.java:593) org.apache.ratis.RaftTestUtil.assertLogEntries(RaftTestUtil.java:251) org.apache.ratis.RaftTestUtil.assertLogEntries(RaftTestUtil.java:242) org.apache.ratis.RaftBasicTests.testWithLoad(RaftBasicTests.java:422) org.apache.ratis.RaftBasicTests.lambda$testWithLoad$8(RaftBasicTests.java:342) org.apache.ratis.server.impl.MiniRaftCluster$Factory$Get.runWithNewCluster(MiniRaftCluster.java:141) org.apache.ratis.server.impl.MiniRaftCluster$Factory$Get.runWithNewCluster(MiniRaftCluster.java:121) org.apache.ratis.RaftBasicTests.testWithLoad(RaftBasicTests.java:342) sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) java.lang.reflect.Method.invoke(Method.java:498) org.junit.platform.commons.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:728) org.junit.jupiter.engine.execution.MethodInvocation.proceed(MethodInvocation.java:60) org.junit.jupiter.engine.execution.InvocationInterceptorChain$ValidatingInvocation.proceed(InvocationInterceptorChain.java:131) org.junit.jupiter.engine.extension.SameThreadTimeoutInvocation.proceed(SameThreadTimeoutInvocation.java:45) org.junit.jupiter.engine.extension.TimeoutExtension.intercept(TimeoutExtension.java:156) org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestableMethod(TimeoutExtension.java:147) org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestMethod(TimeoutExtension.java:86) org.junit.jupiter.engine.execution.InterceptingExecutableInvoker$ReflectiveInterceptorCall.lambda$ofVoidMethod$0(InterceptingExecutableInvoker.java:103) org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.lambda$invoke$0(InterceptingExecutableInvoker.java:93) org.junit.jupiter.engine.execution.InvocationInterceptorChain$InterceptedInvocation.proceed(InvocationInterceptorChain.java:106) org.junit.jupiter.engine.execution.InvocationInterceptorChain.proceed(InvocationInterceptorChain.java:64) org.junit.jupiter.engine.execution.InvocationInterceptorChain.chainAndInvoke(InvocationInterceptorChain.java:45) org.junit.jupiter.engine.execution.InvocationInterceptorChain.invoke(InvocationInterceptorChain.java:37) org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.invoke(InterceptingExecutableInvoker.java:92) org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.invoke(InterceptingExecutableInvoker.java:86) org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.lambda$invokeTestMethod$7(TestMethodTestDescriptor.java:218) org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.invokeTestMethod(TestMethodTestDescriptor.java:214) org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:139) org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:69) org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:151) org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141) org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137) org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139) org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138) org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95) java.util.ArrayList.forEach(ArrayList.java:1259) org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll(SameThreadHierarchicalTestExecutorService.java:41) org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:155) org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141) org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137) org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139) org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138) org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95) java.util.ArrayList.forEach(ArrayList.java:1259) org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll(SameThreadHierarchicalTestExecutorService.java:41) org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:155) org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141) org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137) org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139) org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138) org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95) org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.submit(SameThreadHierarchicalTestExecutorService.java:35) org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.execute(HierarchicalTestExecutor.java:57) org.junit.platform.engine.support.hierarchical.HierarchicalTestEngine.execute(HierarchicalTestEngine.java:54) org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:198) org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:169) org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:93) org.junit.platform.launcher.core.EngineExecutionOrchestrator.lambda$execute$0(EngineExecutionOrchestrator.java:58) org.junit.platform.launcher.core.EngineExecutionOrchestrator.withInterceptedStreams(EngineExecutionOrchestrator.java:141) org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:57) org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:103) org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:85) org.junit.platform.launcher.core.DelegatingLauncher.execute(DelegatingLauncher.java:47) org.apache.maven.surefire.junitplatform.LazyLauncher.execute(LazyLauncher.java:50) org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.execute(JUnitPlatformProvider.java:184) org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.invokeAllTests(JUnitPlatformProvider.java:148) org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.invoke(JUnitPlatformProvider.java:120) org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:385) org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:162) org.apache.maven.surefire.booter.ForkedBooter.run(ForkedBooter.java:507) org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:495)Release traces(12): org.apache.ratis.util.ReferenceCountedObject$3.release(ReferenceCountedObject.java:150) org.apache.ratis.server.raftlog.segmented.LogSegment.append(LogSegment.java:362) org.apache.ratis.server.raftlog.segmented.LogSegment.appendToOpenSegment(LogSegment.java:347) org.apache.ratis.server.raftlog.segmented.SegmentedRaftLogCache.appendEntry(SegmentedRaftLogCache.java:606) org.apache.ratis.server.raftlog.segmented.SegmentedRaftLog.appendEntryImpl(SegmentedRaftLog.java:466) org.apache.ratis.server.raftlog.RaftLogBase.lambda$appendEntry$11(RaftLogBase.java:361) org.apache.ratis.server.raftlog.RaftLogSequentialOps$Runner.runSequentially(RaftLogSequentialOps.java:80) org.apache.ratis.server.raftlog.RaftLogBase.appendEntry(RaftLogBase.java:361) org.apache.ratis.server.raftlog.RaftLogBase.appendImpl(RaftLogBase.java:191) org.apache.ratis.server.raftlog.RaftLogBase.lambda$append$2(RaftLogBase.java:164) org.apache.ratis.server.raftlog.RaftLogSequentialOps$Runner.runSequentially(RaftLogSequentialOps.java:71) org.apache.ratis.server.raftlog.RaftLogBase.append(RaftLogBase.java:164) org.apache.ratis.server.impl.ServerState.appendLog(ServerState.java:321) org.apache.ratis.server.impl.RaftServerImpl.appendTransaction(RaftServerImpl.java:808) org.apache.ratis.server.impl.RaftServerImpl.writeAsync(RaftServerImpl.java:969) org.apache.ratis.server.impl.RaftServerImpl.replyFuture(RaftServerImpl.java:929) org.apache.ratis.server.impl.RaftServerImpl.submitClientRequestAsync(RaftServerImpl.java:902) org.apache.ratis.server.impl.RaftServerImpl.lambda$executeSubmitClientRequestAsync$12(RaftServerImpl.java:881) java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1604) java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) java.lang.Thread.run(Thread.java:750)org.apache.ratis.util.ReferenceCountedObject$3.release(ReferenceCountedObject.java:150) org.apache.ratis.server.raftlog.segmented.SegmentedRaftLog.appendEntryImpl(SegmentedRaftLog.java:474) org.apache.ratis.server.raftlog.RaftLogBase.lambda$appendEntry$11(RaftLogBase.java:361) org.apache.ratis.server.raftlog.RaftLogSequentialOps$Runner.runSequentially(RaftLogSequentialOps.java:80) org.apache.ratis.server.raftlog.RaftLogBase.appendEntry(RaftLogBase.java:361) org.apache.ratis.server.raftlog.RaftLogBase.appendImpl(RaftLogBase.java:191) org.apache.ratis.server.raftlog.RaftLogBase.lambda$append$2(RaftLogBase.java:164) org.apache.ratis.server.raftlog.RaftLogSequentialOps$Runner.runSequentially(RaftLogSequentialOps.java:71) org.apache.ratis.server.raftlog.RaftLogBase.append(RaftLogBase.java:164) org.apache.ratis.server.impl.ServerState.appendLog(ServerState.java:321) org.apache.ratis.server.impl.RaftServerImpl.appendTransaction(RaftServerImpl.java:808) org.apache.ratis.server.impl.RaftServerImpl.writeAsync(RaftServerImpl.java:969) org.apache.ratis.server.impl.RaftServerImpl.replyFuture(RaftServerImpl.java:929) org.apache.ratis.server.impl.RaftServerImpl.submitClientRequestAsync(RaftServerImpl.java:902) org.apache.ratis.server.impl.RaftServerImpl.lambda$executeSubmitClientRequestAsync$12(RaftServerImpl.java:881) java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1604) java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) java.lang.Thread.run(Thread.java:750)org.apache.ratis.server.impl.RaftServerImpl.submitClientRequestAsync(RaftServerImpl.java:909) org.apache.ratis.server.impl.RaftServerImpl.lambda$executeSubmitClientRequestAsync$12(RaftServerImpl.java:881) java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1604) java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) java.lang.Thread.run(Thread.java:750)org.apache.ratis.util.ReferenceCountedObject$3.release(ReferenceCountedObject.java:150) org.apache.ratis.server.raftlog.segmented.SegmentedRaftLog.getEntryWithData(SegmentedRaftLog.java:330) org.apache.ratis.server.leader.LogAppenderBase.newAppendEntriesRequest(LogAppenderBase.java:240) org.apache.ratis.grpc.server.GrpcLogAppender.appendLog(GrpcLogAppender.java:387) org.apache.ratis.grpc.server.GrpcLogAppender.run(GrpcLogAppender.java:262) org.apache.ratis.server.leader.LogAppenderDaemon.run(LogAppenderDaemon.java:80) java.lang.Thread.run(Thread.java:750)org.apache.ratis.util.ReferenceCountedObject$3.release(ReferenceCountedObject.java:150) org.apache.ratis.server.raftlog.segmented.SegmentedRaftLog.getEntryWithData(SegmentedRaftLog.java:330) org.apache.ratis.server.leader.LogAppenderBase.newAppendEntriesRequest(LogAppenderBase.java:240) org.apache.ratis.grpc.server.GrpcLogAppender.appendLog(GrpcLogAppender.java:387) org.apache.ratis.grpc.server.GrpcLogAppender.run(GrpcLogAppender.java:262) org.apache.ratis.server.leader.LogAppenderDaemon.run(LogAppenderDaemon.java:80) java.lang.Thread.run(Thread.java:750)org.apache.ratis.server.impl.RaftServerProxy.submitClientRequestAsync(RaftServerProxy.java:455) org.apache.ratis.grpc.server.GrpcClientProtocolService$RequestStreamObserver.processClientRequest(GrpcClientProtocolService.java:256) org.apache.ratis.grpc.server.GrpcClientProtocolService$UnorderedRequestStreamObserver.processClientRequest(GrpcClientProtocolService.java:322) org.apache.ratis.grpc.server.GrpcClientProtocolService$RequestStreamObserver.onNext(GrpcClientProtocolService.java:280) org.apache.ratis.grpc.server.GrpcClientProtocolService$RequestStreamObserver.onNext(GrpcClientProtocolService.java:199) org.apache.ratis.thirdparty.io.grpc.stub.ServerCalls$StreamingServerCallHandler$StreamingServerCallListener.onMessage(ServerCalls.java:262) org.apache.ratis.thirdparty.io.grpc.internal.ServerCallImpl$ServerStreamListenerImpl.messagesAvailableInternal(ServerCallImpl.java:329) org.apache.ratis.thirdparty.io.grpc.internal.ServerCallImpl$ServerStreamListenerImpl.messagesAvailable(ServerCallImpl.java:314) org.apache.ratis.thirdparty.io.grpc.internal.ServerImpl$JumpToApplicationThreadServerStreamListener$1MessagesAvailable.runInContext(ServerImpl.java:833) org.apache.ratis.thirdparty.io.grpc.internal.ContextRunnable.run(ContextRunnable.java:37) org.apache.ratis.thirdparty.io.grpc.internal.SerializingExecutor.run(SerializingExecutor.java:133) java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) java.lang.Thread.run(Thread.java:750)org.apache.ratis.grpc.server.GrpcClientProtocolService$UnorderedRequestStreamObserver.processClientRequest(GrpcClientProtocolService.java:330) org.apache.ratis.grpc.server.GrpcClientProtocolService$RequestStreamObserver.onNext(GrpcClientProtocolService.java:280) org.apache.ratis.grpc.server.GrpcClientProtocolService$RequestStreamObserver.onNext(GrpcClientProtocolService.java:199) org.apache.ratis.thirdparty.io.grpc.stub.ServerCalls$StreamingServerCallHandler$StreamingServerCallListener.onMessage(ServerCalls.java:262) org.apache.ratis.thirdparty.io.grpc.internal.ServerCallImpl$ServerStreamListenerImpl.messagesAvailableInternal(ServerCallImpl.java:329) org.apache.ratis.thirdparty.io.grpc.internal.ServerCallImpl$ServerStreamListenerImpl.messagesAvailable(ServerCallImpl.java:314) org.apache.ratis.thirdparty.io.grpc.internal.ServerImpl$JumpToApplicationThreadServerStreamListener$1MessagesAvailable.runInContext(ServerImpl.java:833) org.apache.ratis.thirdparty.io.grpc.internal.ContextRunnable.run(ContextRunnable.java:37) org.apache.ratis.thirdparty.io.grpc.internal.SerializingExecutor.run(SerializingExecutor.java:133) java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) java.lang.Thread.run(Thread.java:750)org.apache.ratis.util.ReferenceCountedObject$3.release(ReferenceCountedObject.java:150) org.apache.ratis.server.raftlog.segmented.SegmentedRaftLog.getEntryWithData(SegmentedRaftLog.java:330) org.apache.ratis.server.leader.LogAppenderBase.newAppendEntriesRequest(LogAppenderBase.java:240) org.apache.ratis.grpc.server.GrpcLogAppender.appendLog(GrpcLogAppender.java:387) org.apache.ratis.grpc.server.GrpcLogAppender.run(GrpcLogAppender.java:262) org.apache.ratis.server.leader.LogAppenderDaemon.run(LogAppenderDaemon.java:80) java.lang.Thread.run(Thread.java:750)org.apache.ratis.util.ReferenceCountedObject$3.release(ReferenceCountedObject.java:150) org.apache.ratis.server.raftlog.segmented.SegmentedRaftLog.getEntryWithData(SegmentedRaftLog.java:330) org.apache.ratis.server.leader.LogAppenderBase.newAppendEntriesRequest(LogAppenderBase.java:240) org.apache.ratis.grpc.server.GrpcLogAppender.appendLog(GrpcLogAppender.java:387) org.apache.ratis.grpc.server.GrpcLogAppender.run(GrpcLogAppender.java:262) org.apache.ratis.server.leader.LogAppenderDaemon.run(LogAppenderDaemon.java:80) java.lang.Thread.run(Thread.java:750)org.apache.ratis.util.ReferenceCountedObject$3.release(ReferenceCountedObject.java:150) org.apache.ratis.server.impl.StateMachineUpdater.applyLog(StateMachineUpdater.java:263) org.apache.ratis.server.impl.StateMachineUpdater.run(StateMachineUpdater.java:188) java.lang.Thread.run(Thread.java:750)org.apache.ratis.util.ReferenceCountedObject$3.release(ReferenceCountedObject.java:150) org.apache.ratis.server.raftlog.segmented.SegmentedRaftLog.get(SegmentedRaftLog.java:288) org.apache.ratis.RaftTestUtil.logEntriesContains(RaftTestUtil.java:187) org.apache.ratis.RaftTestUtil.logEntriesContains(RaftTestUtil.java:172) org.apache.ratis.RaftTestUtil.lambda$assertLogEntries$5(RaftTestUtil.java:250) java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:174) java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193) java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:175) java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193) java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:175) java.util.concurrent.ConcurrentHashMap$ValueSpliterator.forEachRemaining(ConcurrentHashMap.java:3564) java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:482) java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:472) java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708) java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) java.util.stream.LongPipeline.reduce(LongPipeline.java:461) java.util.stream.LongPipeline.sum(LongPipeline.java:419) java.util.stream.ReferencePipeline.count(ReferencePipeline.java:593) org.apache.ratis.RaftTestUtil.assertLogEntries(RaftTestUtil.java:251) org.apache.ratis.RaftTestUtil.assertLogEntries(RaftTestUtil.java:242) org.apache.ratis.RaftBasicTests.testWithLoad(RaftBasicTests.java:422) org.apache.ratis.RaftBasicTests.lambda$testWithLoad$8(RaftBasicTests.java:342) org.apache.ratis.server.impl.MiniRaftCluster$Factory$Get.runWithNewCluster(MiniRaftCluster.java:141) org.apache.ratis.server.impl.MiniRaftCluster$Factory$Get.runWithNewCluster(MiniRaftCluster.java:121) org.apache.ratis.RaftBasicTests.testWithLoad(RaftBasicTests.java:342) sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) java.lang.reflect.Method.invoke(Method.java:498) org.junit.platform.commons.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:728) org.junit.jupiter.engine.execution.MethodInvocation.proceed(MethodInvocation.java:60) org.junit.jupiter.engine.execution.InvocationInterceptorChain$ValidatingInvocation.proceed(InvocationInterceptorChain.java:131) org.junit.jupiter.engine.extension.SameThreadTimeoutInvocation.proceed(SameThreadTimeoutInvocation.java:45) org.junit.jupiter.engine.extension.TimeoutExtension.intercept(TimeoutExtension.java:156) org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestableMethod(TimeoutExtension.java:147) org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestMethod(TimeoutExtension.java:86) org.junit.jupiter.engine.execution.InterceptingExecutableInvoker$ReflectiveInterceptorCall.lambda$ofVoidMethod$0(InterceptingExecutableInvoker.java:103) org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.lambda$invoke$0(InterceptingExecutableInvoker.java:93) org.junit.jupiter.engine.execution.InvocationInterceptorChain$InterceptedInvocation.proceed(InvocationInterceptorChain.java:106) org.junit.jupiter.engine.execution.InvocationInterceptorChain.proceed(InvocationInterceptorChain.java:64) org.junit.jupiter.engine.execution.InvocationInterceptorChain.chainAndInvoke(InvocationInterceptorChain.java:45) org.junit.jupiter.engine.execution.InvocationInterceptorChain.invoke(InvocationInterceptorChain.java:37) org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.invoke(InterceptingExecutableInvoker.java:92) org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.invoke(InterceptingExecutableInvoker.java:86) org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.lambda$invokeTestMethod$7(TestMethodTestDescriptor.java:218) org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.invokeTestMethod(TestMethodTestDescriptor.java:214) org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:139) org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:69) org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:151) org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141) org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137) org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139) org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138) org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95) java.util.ArrayList.forEach(ArrayList.java:1259) org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll(SameThreadHierarchicalTestExecutorService.java:41) org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:155) org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141) org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137) org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139) org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138) org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95) java.util.ArrayList.forEach(ArrayList.java:1259) org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll(SameThreadHierarchicalTestExecutorService.java:41) org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:155) org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141) org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137) org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139) org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138) org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95) org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.submit(SameThreadHierarchicalTestExecutorService.java:35) org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.execute(HierarchicalTestExecutor.java:57) org.junit.platform.engine.support.hierarchical.HierarchicalTestEngine.execute(HierarchicalTestEngine.java:54) org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:198) org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:169) org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:93) org.junit.platform.launcher.core.EngineExecutionOrchestrator.lambda$execute$0(EngineExecutionOrchestrator.java:58) org.junit.platform.launcher.core.EngineExecutionOrchestrator.withInterceptedStreams(EngineExecutionOrchestrator.java:141) org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:57) org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:103) org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:85) org.junit.platform.launcher.core.DelegatingLauncher.execute(DelegatingLauncher.java:47) org.apache.maven.surefire.junitplatform.LazyLauncher.execute(LazyLauncher.java:50) org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.execute(JUnitPlatformProvider.java:184) org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.invokeAllTests(JUnitPlatformProvider.java:148) org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.invoke(JUnitPlatformProvider.java:120) org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:385) org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:162) org.apache.maven.surefire.booter.ForkedBooter.run(ForkedBooter.java:507) org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:495)org.apache.ratis.util.ReferenceCountedObject$3.release(ReferenceCountedObject.java:150) java.util.concurrent.ConcurrentHashMap$ValuesView.forEach(ConcurrentHashMap.java:4705) org.apache.ratis.server.raftlog.segmented.LogSegment$EntryCache.clear(LogSegment.java:269) org.apache.ratis.server.raftlog.segmented.LogSegment.evictCache(LogSegment.java:482) org.apache.ratis.server.raftlog.segmented.SegmentedRaftLogCache.evictCache(SegmentedRaftLogCache.java:463) org.apache.ratis.server.raftlog.segmented.SegmentedRaftLog.checkAndEvictCache(SegmentedRaftLog.java:362) org.apache.ratis.util.AwaitToRun$RunnableImpl.run(AwaitToRun.java:55) java.lang.Thread.run(Thread.java:750)