Fix exception when searching#7659
Conversation
|
Thanks a lot for the investigation and the fix! However, I fear that the proposed changes will lead to other threading problems because currently |
I apologize for not considering other thread issues. The threading problem here mainly occurs in the put and remove methods I modified. Because the ObservableMap used here is not a thread-safe mapping. Therefore, there will be conflicts between put and remove. |
|
No worries! Do you know which code is invoking put and remove from different threads? |
|
org.jabref.logic.importer.ImportCleanup#doPostCleanup(java.util.Collection<org.jabref.model.entry.BibEntry>) |
|
If the parallel stream is the source for the problems, then just use a normal stream. |
tobiasdiez
left a comment
There was a problem hiding this comment.
Thanks for the quick follow-up!
…om.tngtech.archunit-archunit-junit5-api-0.18.0 * upstream/main: Fix exception when searching (#7659) Fixes Jabref#7660 (#7663) Fix for issue 5850: Journal abbreviations in UTF-8 not recognized (#7639) Fix SSLHandshake Exception by using bypass (#7657) Fix for issue 7633: Unable to download arXiv pdfs if Title contains curly brackets (#7652) Fix#7195 partly Opacity of disabled icon-buttons
We fix the issue that uncaught exception when searching in dark mode. In fact, we found that this issue is not a dark mode issue and this is a threading issue. So we use Platform.runLater() to ensure that there will be no conflicts when adding key-value pairs to the map.
fixes #7343
CHANGELOG.mddescribed in a way that is understandable for the average user (if applicable)