-
Notifications
You must be signed in to change notification settings - Fork 94
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
[Regression] GridPane crashes (@1kHz update rates) - FIXED #40
Comments
In this case the charts were drawn without a grid, and the only CSS styling was Edit: tested on OpenJDK 13 + OpenJFX 13 and OpenJDK12 + OpenJFX 12.0.2 |
Damn, 6bb9276 failed as well. I'm not sure what to try next. |
This may be a Linux-only issue. I couldn't reproduce it on Windows yet. |
Tried to reproduce, unfortunately, as of now (~11h), cannot reproduce this feature. We started another long-term test over the weekend using the RollingBufferSample, RollingBufferSortedTreeSample, and some other additional samples. I noticed that you use a different JDK/OpenJFX version. If this isn't too much trouble, could you test your observation with JDK11 and OpenJFX 12.0.2? Will keep my first test running until tomorrow morning and then start ramping up to 1 kHz notification rates. Could you send me your parameters (ie. number of samples, traces/datasets, line/marker configurations, fixed/auto-size of chart, etc.) so we can setup a test case. Alternatively, you may send in also a MVE. 😃 N.B. I updated the issue title since this seems to be specific for 1kHz update rates which we haven't tackled (until now). The usual chart update rates we test are 25, seldom 50 and max 100 Hz. |
sorry, saw your "Linux" comment only now. Could you try to periodically call the garbage collector (e.g. calling |
Sorry, I've been pretty busy with other things. I'll try to get back to you soon. I haven't seen anything out of the ordinary in flight recorder and the gc logs, but I'll give it a try. |
We did some longer running tests (>3 days) with no success... next time it crashes, could you provide a thread dump (e.g. using VisualVM) Will try to write a test example with 1 kHz update: Could you provide me with your boundary parameters: numbers of samples, traces, markers on/off, renderer and/or renderer style: error bars/surface/none, chart dimensions etc. Thanks in advance. |
changed auto-notification interface to AtomicBoolean and removed superfluous setAutoNotification(boolean) interface to check for lock race-conditions added FX UI thread guards (didn't find anything this time, but just to be safe for the future) notably added additional writeLockGuard around auto-notification guard -> should fix issue #40
@ennerf could you check your issue against dev? I exchanged the existing auto-notification suppression guard with an additional write lock guard around the The modifications checks out against the new 1 kHz test and I hope so does your use-case. Let us know if this still causes troubles. The JavaFX UI thread wasn't really designed for 1 kHz update rate, even less having thread safety in mind. Nevertheless, we hope that chart-fx's N.B. the TableViewer plugin has a known thread-safety issue for >100 Hz updates rates but this seems to be related to the underlying JavaFX issue |
Thanks, it looks good so far. I'll let it run overnight. |
Ran it for 20 hours. Seems to work. Closing. thanks! |
changed auto-notification interface to AtomicBoolean and removed superfluous setAutoNotification(boolean) interface to check for lock race-conditions added FX UI thread guards (didn't find anything this time, but just to be safe for the future) notably added additional writeLockGuard around auto-notification guard -> should fix issue #40
I tried to do a few long-running tests with live-charts at 1KHz and noticed that the latest dev version keeps crashing after 1-2 hours. I did some 24h+ tests last week, so this must be a recent regression.
I've tried a few different versions and it looks like this was introduced in minor: made drawing of grid on top/bottom CSS more easily configurable (4d8ebc3)
The full error is below. The application still runs, but the stage with the chart needs to be closed.
The text was updated successfully, but these errors were encountered: