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

Short freeze when selecting first entry after fresh start #8446

Closed
2 tasks
Krzmbrzl opened this issue Jan 19, 2022 · 5 comments · Fixed by #8624
Closed
2 tasks

Short freeze when selecting first entry after fresh start #8446

Krzmbrzl opened this issue Jan 19, 2022 · 5 comments · Fixed by #8624
Labels
dev: performance status: waiting-for-feedback The submitter or other users need to provide more information about the issue

Comments

@Krzmbrzl
Copy link

Krzmbrzl commented Jan 19, 2022

JabRef version

5.5 (latest release)

Operating system

GNU / Linux

Details on version and operating system

KDE Neon 5.23 (built on Ubuntu 20.04)

Checked with the latest development build

  • I made a backup of my libraries before testing the latest development version.
  • I have tested the latest development version and the problem persists

Steps to reproduce the behaviour

  1. Start JabRef
  2. Select an entry

Appendix

Note: I didn't actually test the latest development version, but I had to check the boxes in order to submit this ticket. I currently do not have the time to look into getting any development versions to work

@ThiloteE
Copy link
Member

ThiloteE commented Jan 20, 2022

How long is the freeze?
Do you have data about RAM, CPU Usage etc. during the freeze?
How large is your database? ~ number of entries?

I also experience that whenever i click on an entry after starting Jabref there is a small lag even with very mall database (~ 20 entries), but this is negligible and is not new to 5.5, but also was present since at least 5.4. In order to open the entry editor, i have to click on an entry twice, not once, which could be designed intentionally, as there are features (e.g. pushing entry to external application) that do not need the entry editor.

JabRef 5.5--2022-01-17--27a05c7
Windows 10 10.0 amd64
Java 16.0.2
JavaFX 17.0.1+1

@Krzmbrzl
Copy link
Author

Krzmbrzl commented Jan 20, 2022

  • The freeze is only about ~3-4 seconds or so. Afterwards any further selections work just fine.
  • During the freeze the CPU spikes to ~40% (before selecting anything, it's about 0%). RAM jumps from ~360MB before selecting anything to ~1GB after having selected the first entry. Afterwards it stays pretty constant (also after the freeze)
  • My DB is also rather small and currently has 157 entries

@ThiloteE
Copy link
Member

ThiloteE commented Feb 1, 2022

This freeze is probably caused by indexing linked and attached pdf files to optimize for full-text search. The more attached pdf files you have, the longer the indexing will take. In the newest development version, a preference was added to disable full-text indexing. Would you mind giving some feedback if this would work for you and report, if it solves the freeze?

@ThiloteE ThiloteE added the status: waiting-for-feedback The submitter or other users need to provide more information about the issue label Feb 1, 2022
@Krzmbrzl
Copy link
Author

Krzmbrzl commented Feb 2, 2022

I will try to find some time to try out the new version. However, I noticed that when I start JabRef it starts a background task that is about indexing files and the freeze upon the first selected item occurs, even if I wait until that task has finished before selecting any of my entries. This makes me doubt that the freeze is due to the indexing 🤔

@HoussemNasri
Copy link
Member

HoussemNasri commented Mar 28, 2022

The freeze occurs while initializing the preview panel in entry editor; the entry editor is created lazily the first time an entry is selected, which explains this behavior.
This is a flamegraph of when an entry is selected the first time.

flamegraph

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dev: performance status: waiting-for-feedback The submitter or other users need to provide more information about the issue
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants