From 8bb64be8181980173ec1dd4309079e3c902e0648 Mon Sep 17 00:00:00 2001 From: engigu Date: Mon, 23 Mar 2026 18:07:18 +0800 Subject: [PATCH] chore: fix query error --- internal/services/mise_service.go | 4 ++-- internal/services/tasks/executor_service.go | 15 ++++++++++++--- 2 files changed, 14 insertions(+), 5 deletions(-) diff --git a/internal/services/mise_service.go b/internal/services/mise_service.go index 1d094cf..b0a388f 100644 --- a/internal/services/mise_service.go +++ b/internal/services/mise_service.go @@ -272,7 +272,7 @@ func (s *MiseService) syncToDB(languages []MiseLanguage) { var model models.Language // 以 plugin 和 version 作为联合唯一标识(业务逻辑上) res := db.Where("plugin = ? AND version = ?", lang.Plugin, lang.Version).Limit(1).Find(&model) - err := res.Error + queryErr := res.Error rowsAffected := res.RowsAffected sourceStr := "" @@ -291,7 +291,7 @@ func (s *MiseService) syncToDB(languages []MiseLanguage) { } } - if err == nil && rowsAffected == 0 { + if queryErr == nil && rowsAffected == 0 { // 如果不存在,则创建 newLang := models.Language{ ID: utils.GenerateID(), diff --git a/internal/services/tasks/executor_service.go b/internal/services/tasks/executor_service.go index 9da2463..bf8b958 100644 --- a/internal/services/tasks/executor_service.go +++ b/internal/services/tasks/executor_service.go @@ -750,7 +750,10 @@ func (es *ExecutorService) CheckConcurrency(taskID string) error { var task models.Task res := database.DB.Select("config, running_go").Where("id = ?", taskID).Limit(1).Find(&task) if res.Error != nil || res.RowsAffected == 0 { - return err + if res.Error != nil { + return res.Error + } + return gorm.ErrRecordNotFound } var goids []int64 if string(task.RunningGo) != "" { @@ -777,7 +780,10 @@ func (es *ExecutorService) AddRunningGo(taskID string) (int64, error) { var task models.Task res := tx.Where("id = ?", taskID).Limit(1).Find(&task) if res.Error != nil || res.RowsAffected == 0 { - return err + if res.Error != nil { + return res.Error + } + return gorm.ErrRecordNotFound } var goids []int64 if task.RunningGo != "" { @@ -819,7 +825,10 @@ func (es *ExecutorService) RemoveRunningGo(taskID string, goid int64) { var task models.Task res := tx.Where("id = ?", taskID).Limit(1).Find(&task) if res.Error != nil || res.RowsAffected == 0 { - return err + if res.Error != nil { + return res.Error + } + return gorm.ErrRecordNotFound } var goids []int64 if task.RunningGo != "" {