chutney-legacy
chutney-legacy copied to clipboard
🐛 | Cannot update report due to concurrent access
What happened?
11:47:42.145 [engine-executor5] ERROR c.c.engine.domain.report.Reporter - Cannot generate step report: null
Steps to reproduce
Create an always failing step with a retry strategy and retry delay less than 1ms.
Relevant logs and/or screenshots/GIFs
11:47:42.145 [engine-executor5] ERROR c.c.engine.domain.report.Reporter - Cannot generate step report: null
java.util.ConcurrentModificationException: null
at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1631)
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499)
at java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:921)
at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
at java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:682)
at com.chutneytesting.engine.domain.execution.engine.step.StepState.filterNullAndEmptyMessage(StepState.java:119)
at com.chutneytesting.engine.domain.execution.engine.step.StepState.informations(StepState.java:111)
at com.chutneytesting.engine.domain.execution.engine.step.Step.informations(Step.java:202)
at com.chutneytesting.engine.domain.report.Reporter.generateReport(Reporter.java:117)
at com.chutneytesting.engine.domain.report.Reporter.lambda$generateReport$4(Reporter.java:119)
at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1625)
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499)
at java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:921)
at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
at java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:682)
at com.chutneytesting.engine.domain.report.Reporter.generateReport(Reporter.java:119)
at com.chutneytesting.engine.domain.report.Reporter.generateRunningReport(Reporter.java:102)
at com.chutneytesting.engine.domain.report.Reporter.lambda$publishReport$0(Reporter.java:78)
at java.base/java.util.Optional.ifPresent(Optional.java:178)
at com.chutneytesting.engine.domain.report.Reporter.doIfPublisherExists(Reporter.java:161)
at com.chutneytesting.engine.domain.report.Reporter.publishReport(Reporter.java:78)
at io.reactivex.internal.observers.LambdaObserver.onNext(LambdaObserver.java:63)
at io.reactivex.internal.operators.observable.ObservableMap$MapObserver.onNext(ObservableMap.java:62)
at io.reactivex.internal.operators.observable.ObservableFilter$FilterObserver.onNext(ObservableFilter.java:52)
at io.reactivex.subjects.PublishSubject$PublishDisposable.onNext(PublishSubject.java:308)
at io.reactivex.subjects.PublishSubject.onNext(PublishSubject.java:228)
at io.reactivex.internal.util.NotificationLite.acceptFull(NotificationLite.java:298)
at io.reactivex.subjects.SerializedSubject.test(SerializedSubject.java:182)
at io.reactivex.internal.util.AppendOnlyLinkedArrayList.forEachWhile(AppendOnlyLinkedArrayList.java:93)
at io.reactivex.subjects.SerializedSubject.emitLoop(SerializedSubject.java:176)
at io.reactivex.subjects.SerializedSubject.onNext(SerializedSubject.java:105)
at com.chutneytesting.engine.domain.execution.RxBus.post(RxBus.java:22)
at com.chutneytesting.engine.domain.execution.engine.step.Step.beginExecution(Step.java:117)
at com.chutneytesting.engine.domain.execution.engine.step.Step.execute(Step.java:89)
at com.chutneytesting.engine.domain.execution.strategies.DefaultStepExecutionStrategy.execute(DefaultStepExecutionStrategy.java:53)
at com.chutneytesting.engine.domain.execution.strategies.RetryWithTimeOutStrategy.executeAll(RetryWithTimeOutStrategy.java:107)
at com.chutneytesting.engine.domain.execution.strategies.RetryWithTimeOutStrategy.execute(RetryWithTimeOutStrategy.java:74)
at com.chutneytesting.engine.domain.execution.strategies.DefaultStepExecutionStrategy.execute(DefaultStepExecutionStrategy.java:41)
at com.chutneytesting.engine.domain.execution.strategies.StepExecutionStrategy.execute(StepExecutionStrategy.java:24)
at com.chutneytesting.engine.domain.execution.engine.DefaultExecutionEngine.lambda$execute$0(DefaultExecutionEngine.java:77)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
at java.base/java.lang.Thread.run(Thread.java:833)
Possible fixes
No response
Version
No response
What browsers are you seeing the problem on ?
No response
What OS did you use ?
No response