make sure every rows is closed

This commit is contained in:
Ted Unangst 2019-09-17 09:45:02 -04:00
parent 5578182bd0
commit 2213f0e935
2 changed files with 26 additions and 19 deletions

View File

@ -109,6 +109,29 @@ func deliverate(goarounds int, username string, rcpt string, msg []byte) {
var pokechan = make(chan int) var pokechan = make(chan int)
func getdoovers() []Doover {
rows, err := stmtGetDoovers.Query()
if err != nil {
log.Printf("wat?")
time.Sleep(1 * time.Minute)
return nil
}
defer rows.Close()
var doovers []Doover
for rows.Next() {
var d Doover
var dt string
err := rows.Scan(&d.ID, &dt)
if err != nil {
log.Printf("error scanning dooverid: %s", err)
continue
}
d.When, _ = time.Parse(dbtimeformat, dt)
doovers = append(doovers, d)
}
return doovers
}
func redeliverator() { func redeliverator() {
sleeper := time.NewTimer(0) sleeper := time.NewTimer(0)
for { for {
@ -121,25 +144,8 @@ func redeliverator() {
case <-sleeper.C: case <-sleeper.C:
} }
rows, err := stmtGetDoovers.Query() doovers := getdoovers()
if err != nil {
log.Printf("wat?")
time.Sleep(1 * time.Minute)
continue
}
var doovers []Doover
for rows.Next() {
var d Doover
var dt string
err := rows.Scan(&d.ID, &dt)
if err != nil {
log.Printf("error scanning dooverid: %s", err)
continue
}
d.When, _ = time.Parse(dbtimeformat, dt)
doovers = append(doovers, d)
}
rows.Close()
now := time.Now().UTC() now := time.Now().UTC()
nexttime := now.Add(24 * time.Hour) nexttime := now.Add(24 * time.Hour)
for _, d := range doovers { for _, d := range doovers {

1
web.go
View File

@ -586,6 +586,7 @@ func thelistingoftheontologies(w http.ResponseWriter, r *http.Request) {
log.Printf("selection error: %s", err) log.Printf("selection error: %s", err)
return return
} }
defer rows.Close()
var onts [][]string var onts [][]string
for rows.Next() { for rows.Next() {
var o string var o string