Skip to content

Duplicate groups in an input file are not detected #7554

@sauliusg

Description

@sauliusg

JabRef version 5.2, 5.3, master commit 049acb9 on Linuxmint-20.1.

JabRef 100.0.0
Linux 5.8.0-45-generic amd64
Java 14.0.2
JavaFX 16+8

Duplicated groups in different branches of the group tree are not detected when a database that contains them is read in.

But on a second thought, and after playing a bit with JabRef 5.x master branch, I start thinking that this is not a bug but actually a very useful feature! I've opened a detailed discussion in https://discourse.jabref.org/t/hierarchical-groups-with-duplicated-names-are-actually-working-in-jabref-5-x/2619. So don't fix it!

Steps to reproduce the behavior:

  1. Start a new JabRef process, create a new library, add an entry, save the database as 'new.bib' (see the attached 'biblio.zip');
  2. Show the groups interface, create two groups 'Human' and 'Computer', create a subgroup 'Languages' in 'Human', save over the 'new.bib';
  3. Assign the new entry to 'Human/Languages';
  4. Copy 'new.bib' to 'new-duplicate-group.bib';
  5. Open the 'new-duplicate-group.bib' with a text editor, and duplicate the 'Languages' group in the 'Computer' branch:
saulius@starta duplicate-groups-created-by-hand-are-not-detected/ $ diff -u new.bib new-duplicate-group.bib 
--- new.bib	2021-03-20 14:13:07.189182296 +0200
+++ new-duplicate-group.bib	2021-03-20 13:35:47.348262111 +0200
@@ -17,4 +17,5 @@
 1 StaticGroup:Human\;2\;1\;0x8a8a8aff\;\;\;;
 2 StaticGroup:Languages\;0\;1\;0x8a8a8aff\;\;\;;
 1 StaticGroup:Computer\;0\;1\;0x8a8a8aff\;\;\;;
+2 StaticGroup:Languages\;0\;1\;0x6a7a9aff\;\;\;;
 }

The resulting BibTeX files are attached in 'biblio.zip':
biblio.zip

  1. Load the edited file into JabRef; no error report is produced, both groups are shown (correctly?), even though the GUI would not allow me to create such situation; the entry is reported to belong to both groups:
    Screenshot from 2021-03-20 13-37-01

The manually created duplicate is used only to reproduce a minimal example of this behaviour; in real life large number of duplicates emerged when porting previous group trees from the previous revisions of my database.

This behaviour actually seems to be very useful, since it allows me to create (once again!) groups with identical names in different places of the group hierarchy, and assignment to one such group adds the same entry to all such groups, which might be very useful (detailed discussion in https://discourse.jabref.org/t/hierarchical-groups-with-duplicated-names-are-actually-working-in-jabref-5-x/2619 ).

This is how it looks after some editing of the database:
Screenshot from 2021-03-20 16-38-55

The resulting bibtex file is added in 'experimets-with-group-hierarchy.zip'.
experimets-with-group-hierarchy.zip

Log File
Paste an excerpt of your log file here

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions