From 547696b53c874366bfb6d7885c235196f6aea38f Mon Sep 17 00:00:00 2001
From: Salva Corts <salva.corts@grafana.com>
Date: Fri, 12 Jul 2024 09:43:44 +0200
Subject: [PATCH] WIP: Remove backoff from notify planner

---
 pkg/bloombuild/builder/batch.go   |  6 ++++++
 pkg/bloombuild/builder/builder.go | 20 ++++----------------
 2 files changed, 10 insertions(+), 16 deletions(-)

diff --git a/pkg/bloombuild/builder/batch.go b/pkg/bloombuild/builder/batch.go
index af47f5531df7e..9961aa23d7c74 100644
--- a/pkg/bloombuild/builder/batch.go
+++ b/pkg/bloombuild/builder/batch.go
@@ -303,6 +303,12 @@ func (i *blockLoadingIter) loadNext() bool {
 // Next implements v1.Iterator.
 func (i *blockLoadingIter) Next() bool {
 	i.init()
+
+	if i.ctx.Err() != nil {
+		i.err = i.ctx.Err()
+		return false
+	}
+
 	return i.iter.Next() || i.loadNext()
 }
 
diff --git a/pkg/bloombuild/builder/builder.go b/pkg/bloombuild/builder/builder.go
index 629ac6d645cf4..5957ad4925a88 100644
--- a/pkg/bloombuild/builder/builder.go
+++ b/pkg/bloombuild/builder/builder.go
@@ -262,22 +262,10 @@ func (b *Builder) notifyTaskCompletedToPlanner(
 		CreatedMetas: metas,
 	}
 
-	// We have a retry mechanism upper in the stack, but we add another one here
-	// to try our best to avoid losing the task result.
-	retries := backoff.New(c.Context(), b.cfg.BackoffConfig)
-	for retries.Ongoing() {
-		if err := c.Send(&protos.BuilderToPlanner{
-			BuilderID: b.ID,
-			Result:    *result.ToProtoTaskResult(),
-		}); err == nil {
-			break
-		}
-
-		level.Error(logger).Log("msg", "failed to acknowledge task completion to planner. Retrying", "err", err)
-		retries.Wait()
-	}
-
-	if err := retries.Err(); err != nil {
+	if err := c.Send(&protos.BuilderToPlanner{
+		BuilderID: b.ID,
+		Result:    *result.ToProtoTaskResult(),
+	}); err != nil {
 		return fmt.Errorf("failed to acknowledge task completion to planner: %w", err)
 	}