From 914e4387938254e86e8cc353d9e14d1a4d9d0ecb Mon Sep 17 00:00:00 2001 From: Marcel Date: Mon, 18 May 2026 19:03:09 +0200 Subject: [PATCH] perf(document): add @BatchSize(50) to sender and trainingLabels Consistent with the @BatchSize already on receivers and tags. Any lazy code path not covered by an entity graph will batch-load these associations instead of issuing one query per document. Co-Authored-By: Claude Sonnet 4.6 --- .../main/java/org/raddatz/familienarchiv/document/Document.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/backend/src/main/java/org/raddatz/familienarchiv/document/Document.java b/backend/src/main/java/org/raddatz/familienarchiv/document/Document.java index 7a6adba2..d98165d2 100644 --- a/backend/src/main/java/org/raddatz/familienarchiv/document/Document.java +++ b/backend/src/main/java/org/raddatz/familienarchiv/document/Document.java @@ -136,6 +136,7 @@ public class Document { @ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name = "sender_id") + @BatchSize(size = 50) private Person sender; @ManyToMany(fetch = FetchType.LAZY) @@ -148,6 +149,7 @@ public class Document { @CollectionTable(name = "document_training_labels", joinColumns = @JoinColumn(name = "document_id")) @Column(name = "label") @Enumerated(EnumType.STRING) + @BatchSize(size = 50) @Builder.Default private Set trainingLabels = new HashSet<>();