v0.1.35: устранены гонки map (ChangeVisibility/DeleteBatch) и nil-deref под Lock + OverLimit
This commit is contained in:
@@ -105,7 +105,13 @@ func SendMessageBatchV1(req *http.Request) (int, interfaces.AbstractResponseBody
|
||||
}
|
||||
|
||||
models.SyncQueues.Lock()
|
||||
// Перепроверка под Lock: очередь могла быть удалена между RLock-проверкой
|
||||
// выше и захватом Lock (иначе nil-pointer deref).
|
||||
queue = models.SyncQueues.Queues[key]
|
||||
if queue == nil {
|
||||
models.SyncQueues.Unlock()
|
||||
return utils.CreateErrorResponseV1("QueueNotFound", true)
|
||||
}
|
||||
newMsgs := make([]models.SqsMessage, 0, len(sendEntries))
|
||||
for _, sendEntry := range sendEntries {
|
||||
msg := models.SqsMessage{MessageBody: sendEntry.MessageBody}
|
||||
|
||||
Reference in New Issue
Block a user