Browse Source

fix potential sqlite lock

tags/v1.2.0-rc1
Lunny Xiao 8 years ago
parent
commit
17f59fc0b5
1 changed files with 7 additions and 9 deletions
  1. +7
    -9
      models/webhook.go

+ 7
- 9
models/webhook.go View File

@@ -612,18 +612,16 @@ func (t *HookTask) deliver() {
// TODO: shoot more hooks at same time.
func DeliverHooks() {
tasks := make([]*HookTask, 0, 10)
x.
Where("is_delivered=?", false).
Iterate(new(HookTask),
func(idx int, bean interface{}) error {
t := bean.(*HookTask)
t.deliver()
tasks = append(tasks, t)
return nil
})
err := x.Where("is_delivered=?", false).Find(&tasks)
if err != nil {
log.Error(4, "DeliverHooks: %v", err)
return
}

// Update hook task status.
for _, t := range tasks {
t.deliver()

if err := UpdateHookTask(t); err != nil {
log.Error(4, "UpdateHookTask [%d]: %v", t.ID, err)
}


Loading…
Cancel
Save