Skip to content

Commit 53e5c54

Browse files
Merge pull request #8 from memphisdev/fix-response-batch
fix response in the batch endpoint
2 parents 72fcd7f + 22a41ce commit 53e5c54

File tree

1 file changed

+6
-5
lines changed

1 file changed

+6
-5
lines changed

handlers/producer.go

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ package handlers
33
import (
44
"encoding/json"
55
"errors"
6-
"fmt"
76
"strings"
87

98
"github.com/gofiber/fiber/v2"
@@ -113,25 +112,27 @@ func CreateHandleBatch(conn *memphis.Conn) func(*fiber.Ctx) error {
113112
}
114113

115114
errCount := 0
116-
var lastErr error
115+
var allErr []string
117116
for _, msg := range batchReq {
118117
rawRes, err := json.Marshal(msg)
119118
if err != nil {
120119
errCount++
121-
lastErr = err
120+
allErr = append(allErr, err.Error())
122121
continue
123122
}
124123
if err := producer.Produce(rawRes, memphis.MsgHeaders(hdrs)); err != nil {
125124
errCount++
126-
lastErr = err
125+
allErr = append(allErr, err.Error())
127126
}
128127
}
129128

130129
if errCount > 0 {
131130
c.Status(400)
132131
return c.JSON(&fiber.Map{
133132
"success": false,
134-
"error": fmt.Sprintf("send failed for %d/%d messages, last error: %v", errCount, len(batchReq), lastErr.Error()),
133+
"sent": len(batchReq) - errCount,
134+
"fail": errCount,
135+
"errors": allErr,
135136
})
136137
}
137138
default:

0 commit comments

Comments
 (0)