Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ConcurrentModificationException in ServiceTaskBase #227

Open
amischler opened this issue Jun 25, 2018 · 3 comments

Comments

@amischler
Copy link

commented Jun 25, 2018

This issue seems to happen relatively randomly :

java.util.ConcurrentModificationException: null
	at java.util.LinkedList$ListItr.checkForComodification(LinkedList.java:966) ~[na:1.8.0_141]
	at java.util.LinkedList$ListItr.next(LinkedList.java:888) ~[na:1.8.0_141]
	at com.sun.javafx.collections.ObservableSequentialListWrapper$2.next(ObservableSequentialListWrapper.java:111) ~[jfxrt.jar:na]
	at java.util.AbstractCollection.toString(AbstractCollection.java:461) ~[na:1.8.0_141]
	at java.lang.String.valueOf(String.java:2994) ~[na:1.8.0_141]
	at java.lang.StringBuilder.append(StringBuilder.java:131) ~[na:1.8.0_141]
	at javafx.beans.property.ListPropertyBase.toString(ListPropertyBase.java:315) ~[jfxrt.jar:na]
	at java.lang.String.valueOf(String.java:2994) ~[na:1.8.0_141]
	at java.lang.StringBuilder.append(StringBuilder.java:131) ~[na:1.8.0_141]
	at org.jrebirth.af.core.wave.WaveBase.toString(WaveBase.java:502) ~[dsdk-launcher.jar:na]
	at org.jrebirth.af.core.service.ServiceTaskBase.call(ServiceTaskBase.java:160) ~[dsdk-launcher.jar:na]
	at javafx.concurrent.Task$TaskCallable.call(Task.java:1423) [jfxrt.jar:na]
	at java.util.concurrent.FutureTask.run(FutureTask.java:266) [na:1.8.0_141]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [na:1.8.0_141]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [na:1.8.0_141]
	at java.lang.Thread.run(Thread.java:748) [na:1.8.0_141]

This happens in a Service performing a loop and updating its progress and message using the AbstractService#updateProgress and AbstractService#updateMessage methods.

@sbordes

This comment has been minimized.

Copy link
Member

commented Jun 25, 2018

As a workaround you can add a return type for your service task, thus it will avoid this trouble.
Which version are you using?
Does your service add waveData ?

@amischler

This comment has been minimized.

Copy link
Author

commented Jun 27, 2018

Sorry, I forgot to mention that i'm using JRebirth v8.0.5.
The service is not adding any waveData manually. I will try your suggested workaround.

@sbordes

This comment has been minimized.

Copy link
Member

commented Jun 27, 2018

There is no ListProperty into WaveBase implementation, so the failure is due to a call of a toString on an WaveData containing a ListProperty.
What do you store into your WaveData ?
Put a breakpoint at WaveBase:502 and let us know the content of the WaveData list.

@sbordes sbordes self-assigned this Sep 4, 2018
@sbordes sbordes added the onhold label Sep 4, 2018
@sbordes sbordes added this to the Undefined milestone Sep 4, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Application Framework
Awaiting triage
2 participants
You can’t perform that action at this time.