diff --git a/models/migrate.go b/models/migrate.go index ea4a8c1768..2715c5bd9b 100644 --- a/models/migrate.go +++ b/models/migrate.go @@ -64,15 +64,20 @@ func insertIssue(sess *xorm.Session, issue *Issue) error { }) labelIDs = append(labelIDs, label.ID) } - if _, err := sess.Insert(issueLabels); err != nil { - return err + if len(issueLabels) > 0 { + if _, err := sess.Insert(issueLabels); err != nil { + return err + } } for _, reaction := range issue.Reactions { reaction.IssueID = issue.ID } - if _, err := sess.Insert(issue.Reactions); err != nil { - return err + + if len(issue.Reactions) > 0 { + if _, err := sess.Insert(issue.Reactions); err != nil { + return err + } } cols := make([]string, 0) @@ -151,8 +156,10 @@ func InsertIssueComments(comments []*Comment) error { reaction.IssueID = comment.IssueID reaction.CommentID = comment.ID } - if _, err := sess.Insert(comment.Reactions); err != nil { - return err + if len(comment.Reactions) > 0 { + if _, err := sess.Insert(comment.Reactions); err != nil { + return err + } } } @@ -196,12 +203,14 @@ func InsertReleases(rels ...*Release) error { return err } - for i := 0; i < len(rel.Attachments); i++ { - rel.Attachments[i].ReleaseID = rel.ID - } + if len(rel.Attachments) > 0 { + for i := range rel.Attachments { + rel.Attachments[i].ReleaseID = rel.ID + } - if _, err := sess.NoAutoTime().Insert(rel.Attachments); err != nil { - return err + if _, err := sess.NoAutoTime().Insert(rel.Attachments); err != nil { + return err + } } } diff --git a/modules/migrations/gitea.go b/modules/migrations/gitea.go index a087cafe9d..8da1bd4683 100644 --- a/modules/migrations/gitea.go +++ b/modules/migrations/gitea.go @@ -393,13 +393,16 @@ func (g *GiteaLocalUploader) CreateIssues(issues ...*base.Issue) error { iss = append(iss, &is) } - err := models.InsertIssues(iss...) - if err != nil { - return err - } - for _, is := range iss { - g.issues.Store(is.Index, is.ID) + if len(iss) > 0 { + if err := models.InsertIssues(iss...); err != nil { + return err + } + + for _, is := range iss { + g.issues.Store(is.Index, is.ID) + } } + return nil } @@ -478,6 +481,9 @@ func (g *GiteaLocalUploader) CreateComments(comments ...*base.Comment) error { cms = append(cms, &cm) } + if len(cms) == 0 { + return nil + } return models.InsertIssueComments(cms) }