From 9896c975d303c931c785a7d1881b01dd61f3e8a8 Mon Sep 17 00:00:00 2001 From: tbphp Date: Mon, 7 Jul 2025 22:34:35 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E6=81=A2=E5=A4=8Dkey=E6=97=B6=E9=87=8D?= =?UTF-8?q?=E7=BD=AE=E5=A4=B1=E8=B4=A5=E6=AC=A1=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- internal/keypool/provider.go | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/internal/keypool/provider.go b/internal/keypool/provider.go index 6a05129..2b45e21 100644 --- a/internal/keypool/provider.go +++ b/internal/keypool/provider.go @@ -339,7 +339,11 @@ func (p *KeyProvider) RestoreKeys(groupID uint) (int64, error) { return nil } - result := tx.Model(&models.APIKey{}).Where("group_id = ? AND status = ?", groupID, models.KeyStatusInvalid).Update("status", models.KeyStatusActive) + updates := map[string]any{ + "status": models.KeyStatusActive, + "failure_count": 0, + } + result := tx.Model(&models.APIKey{}).Where("group_id = ? AND status = ?", groupID, models.KeyStatusInvalid).Updates(updates) if result.Error != nil { return result.Error } @@ -347,6 +351,7 @@ func (p *KeyProvider) RestoreKeys(groupID uint) (int64, error) { for _, key := range invalidKeys { key.Status = models.KeyStatusActive + key.FailureCount = 0 if err := p.addKeyToStore(&key); err != nil { logrus.WithFields(logrus.Fields{"keyID": key.ID, "error": err}).Error("Failed to restore key in store after DB update") }