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

Not on Fx Thread exception when editing keywords #5916

Closed
mlep opened this issue Feb 3, 2020 · 4 comments
Closed

Not on Fx Thread exception when editing keywords #5916

mlep opened this issue Feb 3, 2020 · 4 comments
Labels
autocompletion bug Confirmed bugs or reports that are very likely to be bugs export / save

Comments

@mlep
Copy link
Contributor

mlep commented Feb 3, 2020

JabRef 5.0-beta.401--2020-02-03--c3363c0
Linux 4.9.0-11-amd64 amd64
Java 13.0.2

While editing a new entry (modifying the keywords), a window entitled "Exception details" pop-up. "Uncaught exception occurred in Thread[pool-31-thread-1,5,main]"
Capture du 2020-02-03 14-42-57

After closing the event, I could continue editing. The journal of events of JabRef was empty.

java.lang.IllegalStateException: Task must only be used from the FX Application Thread at org.jabref.merged.module/javafx.concurrent.Task.checkThread(Unknown Source) at org.jabref.merged.module/javafx.concurrent.Task.isRunning(Unknown Source) at org.jabref.merged.module/org.controlsfx.control.textfield.AutoCompletionBinding.onUserInputChanged(Unknown Source) at org.jabref.merged.module/org.controlsfx.control.textfield.AutoCompletionBinding.setUserInput(Unknown Source) at org.jabref/org.jabref.gui.autocompleter.AutoCompletionTextInputBinding.setUserInputText(Unknown Source) at org.jabref/org.jabref.gui.autocompleter.AutoCompletionTextInputBinding.lambda$new$0(Unknown Source) at org.jabref.merged.module/com.sun.javafx.binding.ExpressionHelper$Generic.fireValueChangedEvent(Unknown Source) at org.jabref.merged.module/com.sun.javafx.binding.ExpressionHelper.fireValueChangedEvent(Unknown Source) at org.jabref.merged.module/javafx.scene.control.TextInputControl$TextProperty.fireValueChangedEvent(Unknown Source) at org.jabref.merged.module/javafx.scene.control.TextInputControl$TextProperty.markInvalid(Unknown Source) at org.jabref.merged.module/javafx.scene.control.TextInputControl$TextProperty.controlContentHasChanged(Unknown Source) at org.jabref.merged.module/javafx.scene.control.TextInputControl.lambda$new$0(Unknown Source) at org.jabref.merged.module/com.sun.javafx.binding.ExpressionHelper$SingleInvalidation.fireValueChangedEvent(Unknown Source) at org.jabref.merged.module/com.sun.javafx.binding.ExpressionHelper.fireValueChangedEvent(Unknown Source) at org.jabref.merged.module/javafx.scene.control.TextArea$TextAreaContent.insert(Unknown Source) at org.jabref.merged.module/javafx.scene.control.TextInputControl.replaceText(Unknown Source) at org.jabref.merged.module/javafx.scene.control.TextInputControl.filterAndSet(Unknown Source) at org.jabref.merged.module/javafx.scene.control.TextInputControl$TextProperty.doSet(Unknown Source) at org.jabref.merged.module/javafx.scene.control.TextInputControl$TextProperty.set(Unknown Source) at org.jabref.merged.module/javafx.scene.control.TextInputControl$TextProperty.set(Unknown Source) at org.jabref.merged.module/javafx.beans.property.StringProperty.setValue(Unknown Source) at org.jabref.merged.module/javafx.beans.property.StringProperty.setValue(Unknown Source) at org.jabref.merged.module/com.sun.javafx.binding.BidirectionalBinding$TypedGenericBidirectionalBinding.changed(Unknown Source) at org.jabref.merged.module/com.sun.javafx.binding.ExpressionHelper$Generic.fireValueChangedEvent(Unknown Source) at org.jabref.merged.module/com.sun.javafx.binding.ExpressionHelper.fireValueChangedEvent(Unknown Source) at org.jabref.merged.module/javafx.beans.property.StringPropertyBase.fireValueChangedEvent(Unknown Source) at org.jabref.merged.module/javafx.beans.property.StringPropertyBase.markInvalid(Unknown Source) at org.jabref.merged.module/javafx.beans.property.StringPropertyBase.set(Unknown Source) at org.jabref.merged.module/javafx.beans.property.StringPropertyBase.set(Unknown Source) at org.jabref.merged.module/javafx.beans.property.StringProperty.setValue(Unknown Source) at org.jabref.merged.module/javafx.beans.property.StringProperty.setValue(Unknown Source) at org.jabref/org.jabref.gui.util.BindingsHelper$BidirectionalBinding.updateLocked(Unknown Source) at org.jabref/org.jabref.gui.util.BindingsHelper$BidirectionalBinding.changedB(Unknown Source) at org.jabref.merged.module/com.sun.javafx.binding.ExpressionHelper$SingleChange.fireValueChangedEvent(Unknown Source) at org.jabref.merged.module/com.sun.javafx.binding.ExpressionHelper.fireValueChangedEvent(Unknown Source) at org.jabref.merged.module/javafx.beans.binding.ObjectBinding.invalidate(Unknown Source) at org.jabref.merged.module/com.sun.javafx.binding.BindingHelperObserver.invalidated(Unknown Source) at org.jabref.merged.module/com.sun.javafx.collections.MapListenerHelper$Generic.fireValueChangedEvent(Unknown Source) at org.jabref.merged.module/com.sun.javafx.collections.MapListenerHelper.fireValueChangedEvent(Unknown Source) at org.jabref.merged.module/com.sun.javafx.collections.ObservableMapWrapper.callObservers(Unknown Source) at org.jabref.merged.module/com.sun.javafx.collections.ObservableMapWrapper.put(Unknown Source) at org.jabref/org.jabref.model.entry.BibEntry.setField(Unknown Source) at org.jabref/org.jabref.model.cleanup.FieldFormatterCleanup.cleanupSingleField(Unknown Source) at org.jabref/org.jabref.model.cleanup.FieldFormatterCleanup.cleanupAllFields(Unknown Source) at org.jabref/org.jabref.model.cleanup.FieldFormatterCleanup.cleanup(Unknown Source) at org.jabref/org.jabref.logic.exporter.BibDatabaseWriter.applySaveActions(Unknown Source) at org.jabref/org.jabref.logic.exporter.BibDatabaseWriter.savePartOfDatabase(Unknown Source) at org.jabref/org.jabref.logic.exporter.BibDatabaseWriter.saveDatabase(Unknown Source) at org.jabref/org.jabref.logic.autosaveandbackup.BackupManager.performBackup(Unknown Source) at java.base/java.util.Optional.ifPresent(Unknown Source) at org.jabref/org.jabref.logic.autosaveandbackup.BackupManager.lambda$startBackupTask$2(Unknown Source) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) at java.base/java.util.concurrent.FutureTask.run(Unknown Source) at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(Unknown Source) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.base/java.lang.Thread.run(Unknown Source)
@Siedlerchr Siedlerchr changed the title Uncaught exception occurred Not on Fx Thread exception when editing keywords (autocomplete) Feb 3, 2020
@Siedlerchr Siedlerchr added autocompletion bug Confirmed bugs or reports that are very likely to be bugs labels Feb 3, 2020
@Siedlerchr
Copy link
Member

Siedlerchr commented Feb 3, 2020

at org.jabref/org.jabref.model.entry.BibEntry.setField(Unknown Source)
org.jabref/org.jabref.model.cleanup.FieldFormatterCleanup.cleanupSingleField(Unknown Source) at org.jabref/org.jabref.model.cleanup.FieldFormatterCleanup.cleanupAllFields(Unknown Source) at org.jabref/org.jabref.model.cleanup.FieldFormatterCleanup.cleanup(Unknown Source) at org.jabref/org.jabref.logic.exporter.BibDatabaseWriter.applySaveActions(Unknown Source) at org.jabref/org.jabref.logic.exporter.BibDatabaseWriter.savePartOfDatabase(Unknown Source) at org.jabref/org.jabref.logic.exporter.BibDatabaseWriter.saveDatabase(Unknown Source) at

It seems like this is one of those errors triggered from save actions.
#5289 had a solution for a similar problem

@mlep Could you please list if you have some save actions enabled?

@Siedlerchr Siedlerchr changed the title Not on Fx Thread exception when editing keywords (autocomplete) Not on Fx Thread exception when editing keywords Feb 3, 2020
@mlep
Copy link
Contributor Author

mlep commented Feb 5, 2020

In Library -> Library properties, "Enable save actions" is NOT checked.

@davidcbenson
Copy link

davidcbenson commented Mar 26, 2020

I was having the same issue when entering keywords, as well as in several other fields, and I turned auto-complete off. I have been using Jabref for more than an hour without the error reoccurring, and it was happening every few minutes or so before. I also have no save actions.

EDIT: Literally no sooner did I type that, than I returned to Jabref and it threw the error. I'm leaving this up in case the error is unrelated.

@Siedlerchr
Copy link
Member

Thank you for reporting this issue. We think, that is already fixed in our development version and consequently the change will be included in the next release.

We would like to ask you to use a development build from https://builds.jabref.org/master and report back if it works for you. Please remember to make a backup of your library before trying-out this version.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
autocompletion bug Confirmed bugs or reports that are very likely to be bugs export / save
Projects
None yet
Development

No branches or pull requests

3 participants