in state/state.go [158:192]
func parseRegRows(rows *sql.Rows) (Type, error) {
defer func() { log.E(rows.Close()) }()
res := make(Type, 0)
var r Row
var sa, ca, ua sql.NullTime
var rp sql.NullString
var ns int
for rows.Next() {
if err := rows.Scan(&r.Cluster, &r.Service, &r.DB, &r.Table, &r.Input, &r.Output, &r.OutputFormat, &r.Version, &sa, &ns, &ca, &ua, &rp); err != nil {
return nil, err
}
r.NeedSnapshot = false
if ns > 0 {
r.NeedSnapshot = true
}
r.SnapshottedAt = time.Time{}
if sa.Valid {
r.SnapshottedAt = sa.Time
}
if ca.Valid {
r.CreatedAt = ca.Time
}
if ua.Valid {
r.UpdatedAt = ua.Time
}
if err := readTableParams(rp, &r); err != nil {
return nil, err
}
res = append(res, r)
}
if err := rows.Err(); err != nil {
return nil, err
}
return res, nil
}