Skip to content

Commit c808a5d

Browse files
committed
Keep database transactions not too big
1 parent b7deea0 commit c808a5d

File tree

1 file changed

+10
-4
lines changed

1 file changed

+10
-4
lines changed

models/migrations/v156.go

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -50,9 +50,7 @@ func fixPublisherIDforTagReleases(x *xorm.Engine) error {
5050
sess := x.NewSession()
5151
defer sess.Close()
5252

53-
if err := sess.Begin(); err != nil {
54-
return err
55-
}
53+
5654

5755
var (
5856
gitRepoCache = make(map[int64]*git.Repository)
@@ -70,6 +68,10 @@ func fixPublisherIDforTagReleases(x *xorm.Engine) error {
7068
for start := 0; ; start += batchSize {
7169
releases := make([]*Release, 0, batchSize)
7270

71+
if err := sess.Begin(); err != nil {
72+
return err
73+
}
74+
7375
if err := sess.Limit(batchSize, start).Asc("id").Where("is_tag=?", true).Find(&releases); err != nil {
7476
return err
7577
}
@@ -134,7 +136,11 @@ func fixPublisherIDforTagReleases(x *xorm.Engine) error {
134136
return err
135137
}
136138
}
139+
140+
if err := sess.Commit(); err != nil {
141+
return err
142+
}
137143
}
138144

139-
return sess.Commit()
145+
return nil
140146
}

0 commit comments

Comments
 (0)