Skip to content
This repository has been archived by the owner on Feb 23, 2024. It is now read-only.

🐛 | Cannot update report due to concurrent access #1089

Open
bessonm opened this issue Jul 21, 2023 · 0 comments
Open

🐛 | Cannot update report due to concurrent access #1089

bessonm opened this issue Jul 21, 2023 · 0 comments
Labels
bug Something isn't working

Comments

@bessonm
Copy link
Member

bessonm commented Jul 21, 2023

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

@bessonm bessonm added the bug Something isn't working label Jul 21, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

1 participant