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

JabRef freeze in opening entry editor #2963

Closed
mlep opened this issue Jul 4, 2017 · 38 comments
Closed

JabRef freeze in opening entry editor #2963

mlep opened this issue Jul 4, 2017 · 38 comments
Labels
bug Confirmed bugs or reports that are very likely to be bugs entry-editor os: linux status: waiting-for-feedback The submitter or other users need to provide more information about the issue
Milestone

Comments

@mlep
Copy link
Contributor

mlep commented Jul 4, 2017

JabRef-4.0.0-dev--snapshot--2017-07-03--master--6897b10fb.jar on LInux Mint LMDE.

java version "1.8.0_66"
Java(TM) SE Runtime Environment (build 1.8.0_66-b17)
Java HotSpot(TM) 64-Bit Server VM (build 25.66-b17, mixed mode)

Steps to reproduce:

  1. create a new database
  2. Menu BibTeX -> New entry...
  3. Select an entry type (such as article)

JabRef does not do anything (processor idle) and cannot even be closed.

Log File $ java -jar ./bin/JabRef-4.0.0-dev--snapshot--2017-07-03--mast--6897b10fb.jar AI: INFO 04-07-2017 11:56, 19: Configuration file has been successfully found as resource File: grouptree.fxml not found, attempting with camel case Jul 04, 2017 11:56:48 AM javafx.fxml.FXMLLoader$ValueElement processValue WARNING: Loading FXML document with JavaFX API of version 8.0.112 by JavaFX runtime of version 8.0.66 File: grouptree.css not found, attempting with camel case Jul 04, 2017 11:57:44 AM javafx.fxml.FXMLLoader$ValueElement processValue WARNING: Loading FXML document with JavaFX API of version 8.0.112 by JavaFX runtime of version 8.0.66 Jul 04, 2017 11:57:45 AM javafx.fxml.FXMLLoader$ValueElement processValue WARNING: Loading FXML document with JavaFX API of version 8.0.112 by JavaFX runtime of version 8.0.66 Jul 04, 2017 11:57:45 AM javafx.fxml.FXMLLoader$ValueElement processValue WARNING: Loading FXML document with JavaFX API of version 8.0.112 by JavaFX runtime of version 8.0.66 Jul 04, 2017 11:57:45 AM javafx.fxml.FXMLLoader$ValueElement processValue WARNING: Loading FXML document with JavaFX API of version 8.0.112 by JavaFX runtime of version 8.0.66 Jul 04, 2017 11:57:45 AM javafx.fxml.FXMLLoader$ValueElement processValue WARNING: Loading FXML document with JavaFX API of version 8.0.112 by JavaFX runtime of version 8.0.66 Jul 04, 2017 11:57:45 AM javafx.fxml.FXMLLoader$ValueElement processValue WARNING: Loading FXML document with JavaFX API of version 8.0.112 by JavaFX runtime of version 8.0.66 Jul 04, 2017 11:57:45 AM javafx.fxml.FXMLLoader$ValueElement processValue WARNING: Loading FXML document with JavaFX API of version 8.0.112 by JavaFX runtime of version 8.0.66 Jul 04, 2017 11:57:45 AM javafx.fxml.FXMLLoader$ValueElement processValue WARNING: Loading FXML document with JavaFX API of version 8.0.112 by JavaFX runtime of version 8.0.66 Jul 04, 2017 11:57:45 AM javafx.fxml.FXMLLoader$ValueElement processValue WARNING: Loading FXML document with JavaFX API of version 8.0.112 by JavaFX runtime of version 8.0.66 Jul 04, 2017 11:57:45 AM javafx.fxml.FXMLLoader$ValueElement processValue WARNING: Loading FXML document with JavaFX API of version 8.0.112 by JavaFX runtime of version 8.0.66
@Siedlerchr
Copy link
Member

Could you please try again with an updated JRE? The log indicates that your runtime version is older than the version with which the javafx stuff was created
The current version is:

java version "1.8.0_131"
Java(TM) SE Runtime Environment (build 1.8.0_131-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.131-b11, mixed mode)

@ilippert
Copy link
Contributor

ilippert commented Jul 4, 2017

JabRef 4.0.0-dev--snapshot--2017-07-03--master--6897b10fb
Linux 4.11.8-200.fc25.x86_64 amd64
Java 1.8.0_131

java version "1.8.0_131"
Java(TM) SE Runtime Environment (build 1.8.0_131-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.131-b11, mixed mode)

I confirm the issue. Opening a database works. But double clicking an entry to open entry editor does not work and jabref freezes.

@tobiasdiez tobiasdiez added bug Confirmed bugs or reports that are very likely to be bugs entry-editor status: waiting-for-feedback The submitter or other users need to provide more information about the issue labels Jul 4, 2017
@tobiasdiez tobiasdiez added this to the v4.0 milestone Jul 4, 2017
@Siedlerchr
Copy link
Member

Siedlerchr commented Jul 4, 2017

Hm, I just tested the steps above. On Xubuntu 16.04 (8GB ram) with oracle jdk I cannot reproduce this behaviour. It takes a moment to open the entry editor, but I can not report a freeze.

@ilippert
Copy link
Contributor

ilippert commented Jul 4, 2017

@Siedlerchr I believe I use oracle jdk, because openjdk would/should be indicated when prompting the shell for java -version.

@mlep
Copy link
Contributor Author

mlep commented Jul 7, 2017

After update of Java from Oracle:

java version "1.8.0_131"
Java(TM) SE Runtime Environment (build 1.8.0_131-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.131-b11, mixed mode)

and using the last master (JabRef-4.0.0-dev--snapshot--2017-07-06--master--edd3f7cc1.jar),
I get the same behavior: a freeze (if it takes a "moment", this is a very long moment... (> 10 minutes))
JabRef is not responding (even for closing the window). I had to kill it.
Note: no CPU usage reported.

In the terminal, I get:
$ java -jar JabRef-4.0.0-dev--snapshot--2017-07-06--master--edd3f7cc1.jar
AI: INFO 07-07-2017 10:15, 19: Configuration file has been successfully found as resource
File: grouptree.fxml not found, attempting with camel case
File: grouptree.css not found, attempting with camel case

So, no more warnings regarding JavaFX.

And same behavior when using an existing database and double-clicking on an entry (in an attempt to edit this entry).

@lenhard
Copy link
Member

lenhard commented Jul 11, 2017

I just tried this with the current master on Windows 7. Everything is working fine. Could this be a linux problem?

@lenhard lenhard modified the milestones: v4.1, v4.0 Jul 11, 2017
@mlep
Copy link
Contributor Author

mlep commented Jul 11, 2017

Could be. Any way to help in the diagnosis?
BTW, if this bug is postpone to v4.1, it means JabRef 4.0 will be not usable for Linux users...

@lenhard
Copy link
Member

lenhard commented Jul 11, 2017

We have Linux users (@Siedlerchr, @lynyus) that do not experience this problem, so it's not a blocker for Linux per se.

@mlep
Copy link
Contributor Author

mlep commented Jul 11, 2017

Sorry, I overlooked this point.
What kind of test can be carried out to investigate the cause?

@LinusDietz
Copy link
Member

We just talked about that in the devcall and are also unsure what the underlying problem is and which information can help us to solve this issue for everybody. :/

@koppor koppor removed the status: waiting-for-feedback The submitter or other users need to provide more information about the issue label Jul 18, 2017
@lenhard lenhard marked this as a duplicate of #3043 Jul 23, 2017
@lenhard
Copy link
Member

lenhard commented Jul 24, 2017

To follow up on this: What we need is someone who experiences this error (no one in the dev team can reproduce it, no one uses Mint) to install the development environment and debug the failure.

So far there were two people using Linux Mint experiencing this, but no other OS (if I didn't overlook something). It might be something in the Mint environment.

@mlep
Copy link
Contributor Author

mlep commented Jul 24, 2017

Note: JabRef-4.0-dev--snapshot--2017-07-22--master--8730d02d9.jar does not freeze when using

openjdk version "1.8.0_131"
OpenJDK Runtime Environment (build 1.8.0_131-8u131-b11-1~bpo8+1-b11)
OpenJDK 64-Bit Server VM (build 25.131-b11, mixed mode)

with

 openjfx-8u60

@ilippert
Copy link
Contributor

I had confirmed the issue, too, and I am running Fedora.

@matthiasgeiger
Copy link
Member

Can you please check which openjfx version you are using?
Thanks!

@mlep
Copy link
Contributor Author

mlep commented Jul 25, 2017

version 8.0.60

@lenhard
Copy link
Member

lenhard commented Jul 27, 2017

@ilippert Good to know, thanks! Could you try out openjfx 8.0.60 and see if this solves the problem on your machine?

In #3038 we also have a Mint user who doesn't report that the entry editor crashes. So this is most definitely a javafx configuration problem on Linux that's not specific for a certain distro.

Can we just tell people to use the javafx version 8.0.60 if they experience this? I still see very little that we can do from the side of JabRef here.

@ilippert
Copy link
Contributor

@lenhard Hmm, to be detailed:
I have now updated Java via http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html hopeing it includes openjfx 8.0.60. But, sorry, I am too much a lay person to know how I investigate, which version of openjfx I now have.

JabRef 4.0-dev--snapshot--2017-07-25--master--0847f5d15
Linux 4.11.11-300.fc26.x86_64 amd64
Java 1.8.0_144

uname -a results in
Linux 4.11.11-300.fc26.x86_64 #1 SMP Mon Jul 17 16:32:11 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

With this configuration the error persists.

@matthiasgeiger
Copy link
Member

matthiasgeiger commented Jul 31, 2017

@Siedlerchr fixed an issue yesterday that let JabRef freeze in another context - see #3058.

If you are using a configuration with automatic timestamp updates upon changing an entry the underlying problem might also be the cause of the freezes reported by you @mlep and @ilippert

Could you please check, whether the problem persists with the latest master builds from https://builds.jabref.org/master ?

Thanks!

@mlep
Copy link
Contributor Author

mlep commented Jul 31, 2017

Works as expected with JabRef-4.0-dev--snapshot--2017-07-30--master--81e6e8ed6.jar
Great! Thanks!

@ilippert
Copy link
Contributor

JabRef 4.0-dev--snapshot--2017-07-30--master--81e6e8ed6
Linux 4.11.11-300.fc26.x86_64 amd64
Java 1.8.0_144

does not work as expected; still crashes.

@matthiasgeiger
Copy link
Member

... too bad.

@Siedlerchr
Copy link
Member

@ilippert Could you please try to start JabRef from commandline and check if there is any exception or error printed?
e.g. java -jar JabRef.jar

@ilippert
Copy link
Contributor

I did check, nothing gets printed in the shell after producing the freeze effect. I am happy to offer other traces - if you suggest which

@matthiasgeiger
Copy link
Member

Okay, as the Problem is solved for @mlep now this might be related to some weird combination of different aspects.

Let's try to narrow the potential cause: Could you please export your preferences (Options -> Preferences -> Export in the lower left side of the Dialog) and then reset the preferences (same Dialog). Does the problem of freezing persist?

@ilippert
Copy link
Contributor

ilippert commented Aug 1, 2017

thanks, the problem persists. This morning, I have even experienced a few java core dumps today. see https://pastebin.com/XkNReGKi
The vague pattern I experience about the core dumps is as follows: if I just download the latest master and run it, JabRef starts and crashes after some time, sometimes even before the UI shows up; then when I try to start JabRef again via the shell, I get the feedback
Error: Invalid or corrupt jarfile JabRef--master--latest.jar

Now, if I set the JabRef master jar as read only, the core dumps do not seem to happen.

Then I tested JabRef for the original issue, with no files opened, and preferences reset. I then created a new file, imported some entries; and once I attempt to open the entry editor, it crashes; and nothing is reported on the shell.

@Siedlerchr
Copy link
Member

Regarding your java core dumps, I found this bug report with a potential solution:
https://bugs.openjdk.java.net/browse/JDK-8160933

As you say this only happens when you open the entry editor, I have the vague feeling that it could be related to the CSL citation style lib. but no idea how to fix this,

Could you try to compile and run it directly from source code?
E.g. do a git clone https://github.com/JabRef/jabref.git
Then cd into that directory JabRef and execute ./gradlew run
It will download all kind of libs, compile and then start.

@ilippert
Copy link
Contributor

ilippert commented Aug 1, 2017

compiled and then started successfully. I am not registering anything in the shell when it crashes (crash reproduced).

@ilippert
Copy link
Contributor

ilippert commented Aug 1, 2017

I have also now started without all my preferences. I have closed all files; and created a blank one. As soon as I create a new entry (that would be opened in the entry editor), JabRef breaks down.

I am happy to investigate further with your patient guidance

@koppor
Copy link
Member

koppor commented Aug 9, 2017

@ilippert We assume recent fedora with recent updates and OrcleJDK 1.8.131?

@ilippert
Copy link
Contributor

ilippert commented Aug 9, 2017

thanks!
JabRef 4.0-dev--snapshot--2017-08-08--master--3acd1f8d0
Linux 4.11.11-300.fc26.x86_64 amd64
Java 1.8.0_144

this java version is from http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

Fedora is up to date.

hmm, how does OrcleJDK 1.8.131 relate to Java 1.8.0_144?

@koppor
Copy link
Member

koppor commented Aug 9, 2017

git bisect lead us to c9566c2 - #2875

@ilippert Do you have a checkout? Can you confirm, that ./gradlew run at commit c9566c2 ( git checkout c9566c2) leads to a non-working JabRef, but ea76246 works?

@ilippert
Copy link
Contributor

ilippert commented Aug 9, 2017

hi,
56577b5 leads to crash when attempting to open the entry editor.

c9566c2 allows me partially to use the editor; though it literally takes seconds for the entry editor to load. I can then work in the editor and close it with the entry editor close button (I can repeat this for many entries >10). However, when I simply click onto another entry in the entry table whilst having opened the entry editor (hoping to open the entry editor for that other entry), it normally crashes (with one exception in which it did not directly crash).

ea76246 allows me partially to use the editor: opening the editor is much much faster (within a one second range; sometimes, however, JabRef directly crashes when trying to open the entry editor). I can then work in the editor and close it with the entry editor close button. Sometimes, it works then to open the entry editor for another entry (sometimes it crashes then; I achieved opening max 2 or 3 different entries in the entry editor). However, when I simply click onto another entry in the entry table whilst having opened the entry editor (hoping to open the entry editor for that other entry), it directly crashes.

Sorry, this is not a straightforward confirmation...

@ilippert
Copy link
Contributor

ilippert commented Aug 9, 2017

"playing" with various checkouts...

beta works wonderfully, of course ;) that is: 0bbb930

c3a898f, 3acd1f8, 3344c629c114349115354fbaa7b08da593b055 and 6c4e71c do not allow me to open entry editor.

ede4dc8, fcac527, a9e2066 work wonderfully.

b02433b gets me to a behaviour in which I can open the entry editor, but then it starts to crash, similar to the description in #2963 (comment)

4832e5d, 4543592 do not seem to have an entry editor ;)

7818515 does have the frame of the editor, but not fields; but no crashes ;)

@koppor
Copy link
Member

koppor commented Aug 10, 2017

Oh, wow, good to know.

Superficial question: Does snap install jabref --edge --devmode work at your side and does the snap JabRef work (Refs #2345)?

@ilippert
Copy link
Contributor

ilippert commented Aug 11, 2017

works well, it snap run jabref seems to run faster than the other ways of running jabref.

I get a range of warnings, like
WARNING: Loading FXML document with JavaFX API of version 8.0.112 by JavaFX runtime of version 8.0.111 Aug 11, 2017 2:07:25 AM javafx.fxml.FXMLLoader$ValueElement processValue

as well as

(java:3766): Gtk-WARNING **: Unable to locate theme engine in module_path: "pixmap", (java:3766): Gtk-WARNING **: Unable to locate theme engine in module_path: "adwaita", Gtk-Message: Failed to load module "pk-gtk-module" Gtk-Message: Failed to load module "canberra-gtk-module"

@Siedlerchr
Copy link
Member

So apart from some GTK errors and the warnings, the snap works fine and does not crash?

@Siedlerchr Siedlerchr added the status: waiting-for-feedback The submitter or other users need to provide more information about the issue label Aug 14, 2017
@ilippert
Copy link
Contributor

yes, indeed - it works fine at least with respect to this current issue of the entry editor; I did not check it with respect to other issues.

@Siedlerchr
Copy link
Member

Okay, so I would close this for the moment.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Confirmed bugs or reports that are very likely to be bugs entry-editor os: linux status: waiting-for-feedback The submitter or other users need to provide more information about the issue
Projects
None yet
Development

No branches or pull requests

8 participants