Fix bug with sqlite load read (#26305) (#26339)

Backport #26305 by @lunny

Possible fix #26280

Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
(cherry picked from commit 9be9042479ccbe73b4d78fd2acc467972b48ecb3)
This commit is contained in:
Giteabot 2023-08-05 15:35:08 +08:00 committed by Earl Warren
parent e5c26e38f5
commit 33c52556a3
No known key found for this signature in database
GPG key ID: 0579CB2928A78A00
4 changed files with 25 additions and 10 deletions

View file

@ -319,7 +319,7 @@ func createIssueNotification(ctx context.Context, userID int64, issue *issues_mo
}
func updateIssueNotification(ctx context.Context, userID, issueID, commentID, updatedByID int64) error {
notification, err := getIssueNotification(ctx, userID, issueID)
notification, err := GetIssueNotification(ctx, userID, issueID)
if err != nil {
return err
}
@ -340,7 +340,8 @@ func updateIssueNotification(ctx context.Context, userID, issueID, commentID, up
return err
}
func getIssueNotification(ctx context.Context, userID, issueID int64) (*Notification, error) {
// GetIssueNotification return the notification about an issue
func GetIssueNotification(ctx context.Context, userID, issueID int64) (*Notification, error) {
notification := new(Notification)
_, err := db.GetEngine(ctx).
Where("user_id = ?", userID).
@ -751,7 +752,7 @@ func GetUIDsAndNotificationCounts(since, until timeutil.TimeStamp) ([]UserIDCoun
// SetIssueReadBy sets issue to be read by given user.
func SetIssueReadBy(ctx context.Context, issueID, userID int64) error {
if err := issues_model.UpdateIssueUserByRead(userID, issueID); err != nil {
if err := issues_model.UpdateIssueUserByRead(ctx, userID, issueID); err != nil {
return err
}
@ -759,7 +760,7 @@ func SetIssueReadBy(ctx context.Context, issueID, userID int64) error {
}
func setIssueNotificationStatusReadIfUnread(ctx context.Context, userID, issueID int64) error {
notification, err := getIssueNotification(ctx, userID, issueID)
notification, err := GetIssueNotification(ctx, userID, issueID)
// ignore if not exists
if err != nil {
return nil
@ -771,7 +772,7 @@ func setIssueNotificationStatusReadIfUnread(ctx context.Context, userID, issueID
notification.Status = NotificationStatusRead
_, err = db.GetEngine(ctx).ID(notification.ID).Update(notification)
_, err = db.GetEngine(ctx).ID(notification.ID).Cols("status").Update(notification)
return err
}