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

[WIP] Drastically! Improve performance #4578

Closed
wants to merge 1 commit into from
Closed

Conversation

Siedlerchr
Copy link
Member

My first attempt at hacking the performance of JabRef at startup

I found out that JabRef sequentially loads the last edited files in the GUI thread.
Now I decided to load multiple databases in parallel and in a background task.
This drastically improves the startup performance.

This is currently more a good hack. But maybe @tobiasdiez you have some ideas on how to make it fine.
Seems that I currently are stuck with an open thread at exiting JabRef


  • Change in CHANGELOG.md described
  • Tests created for changes
  • Manually tested changed features in running JabRef
  • Screenshots added in PR description (for bigger UI changes)
  • Ensured that the git commit message is a good one
  • Check documentation status (Issue created for outdated help page at help.jabref.org?)

@Siedlerchr Siedlerchr changed the title [WIP] Improve performance [WIP] Drastically! Improve performance Jan 10, 2019
Copy link
Member

@tobiasdiez tobiasdiez left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's a good idea to open the last edited files async. I would however run the complete openLastEditedDatabases in one background thread to minimize problems where one tab is stealing the focus of the other one etc.

@@ -166,7 +123,7 @@ private void openWindow(Stage mainStage) {

for (ParserResult pr : failed) {
String message = Localization.lang("Error opening file '%0'.", pr.getFile().get().getName()) + "\n"
+ pr.getErrorMessage();
+ pr.getErrorMessage();
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The rest of the code should also be moved to run async because it relies on opening the last opened files.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants