From 428f69416f13814540fd6b773a6e8a7dc2b14a13 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Duffeck?= Date: Wed, 25 Mar 2026 14:27:37 +0100 Subject: [PATCH] Commit batches when the limit is reached while iterating over children --- services/search/pkg/bleve/batch.go | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/services/search/pkg/bleve/batch.go b/services/search/pkg/bleve/batch.go index 78378430c6..60a3d0c867 100644 --- a/services/search/pkg/bleve/batch.go +++ b/services/search/pkg/bleve/batch.go @@ -71,6 +71,11 @@ func (b *Batch) Move(id, parentID, location string) error { if err := b.batch.Index(resource.ID, resource); err != nil { return err } + if b.batch.Size() >= b.size { + if err := b.Push(); err != nil { + return err + } + } } return nil @@ -88,6 +93,11 @@ func (b *Batch) Delete(id string) error { if err := b.batch.Index(resource.ID, resource); err != nil { return err } + if b.batch.Size() >= b.size { + if err := b.Push(); err != nil { + return err + } + } } return nil @@ -105,6 +115,11 @@ func (b *Batch) Restore(id string) error { if err := b.batch.Index(resource.ID, resource); err != nil { return err } + if b.batch.Size() >= b.size { + if err := b.Push(); err != nil { + return err + } + } } return nil @@ -142,6 +157,11 @@ func (b *Batch) Purge(id string, onlyDeleted bool) error { for _, resource := range affectResources { b.batch.Delete(resource.ID) + if b.batch.Size() >= b.size { + if err := b.Push(); err != nil { + return err + } + } } return nil