Jabref: Saving the library after any change triggers "Library has been modified by another application."

Created on 25 May 2020  路  7Comments  路  Source: JabRef/jabref

Tested with the latest JabRef development version (master branch) on Ubuntu 16.04

Saving the library after any change within JabRef, triggers the message "Library has been modified by another application.", asking either to choose "Dismiss changes" or "Review changes".

I have only tested it with Ubuntu. Maybe this results due to an unfavorable race condition with the Linux file system?

Details:

  • Saving library with CTRL+S or hitting the save button makes no difference.
  • JabRef's Autosave is not enabled.
  • All files are stored locally, without any external file synchronization.

Probably relevant (but old): #4877

Most helpful comment

Yeaaaahhh. Finally a developer gets these warning messages! Every core developer tried to replicate these issues but couldn't, which made it really hard to fix this issue.

Since you can reliable reproduce this, can you please debug it and report which changes JabRef claims to be there between the current library and the saved file. If you have the time, feel free to open a PR with a fix as well ;-) The general problem is that certain actions are applied to the library before the save, but not to the in-memory library. This leads then to a desync between the written file and whats in memory.

All 7 comments

Yeaaaahhh. Finally a developer gets these warning messages! Every core developer tried to replicate these issues but couldn't, which made it really hard to fix this issue.

Since you can reliable reproduce this, can you please debug it and report which changes JabRef claims to be there between the current library and the saved file. If you have the time, feel free to open a PR with a fix as well ;-) The general problem is that certain actions are applied to the library before the save, but not to the in-memory library. This leads then to a desync between the written file and whats in memory.

I have observed this issue for quite a while now, but until today, I just lived with it, but it's quite annoying. :smile: Ok, I will investigate it.

To start with it, the following changes get reported:

image

image

Ok, what I could find out so far:

  • The problem is library specific.

    • The cause depends on existing groups.

    • It gets triggered with creating a group of cited entries.



      • Procedure + description, see: #6420



    • When such a group has been created, then this message appears whenever the library is changed and gets saved.

    • But as stated in #6394, groups of cited entries also have an issue, so this could be caused as a follow-up.

I have experienced this issue for a long time, but I've never used the "Groups" feature in JabRef.

The reason is, that this reproducible case is caused by something different.

I'm closing this issue, because this concrete issue is caused by #6420 and discussed there onwards.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

lenhard picture lenhard  路  4Comments

AEgit picture AEgit  路  4Comments

diabl0w picture diabl0w  路  3Comments

tobiasdiez picture tobiasdiez  路  4Comments

humbleambition picture humbleambition  路  3Comments