diff --git a/cmd/ursrv/main.go b/cmd/ursrv/main.go index ba6131762..dd0b928b8 100644 --- a/cmd/ursrv/main.go +++ b/cmd/ursrv/main.go @@ -304,7 +304,7 @@ const maxCacheTime = 15 * time.Minute func cacheRefresher(db *sql.DB) { ticker := time.NewTicker(maxCacheTime - time.Minute) defer ticker.Stop() - for range ticker.C { + for ; true; <-ticker.C { cacheMut.Lock() if err := refreshCacheLocked(db); err != nil { log.Println(err) diff --git a/lib/ur/contract/contract.go b/lib/ur/contract/contract.go index 7024332a0..e6f1b55e4 100644 --- a/lib/ur/contract/contract.go +++ b/lib/ur/contract/contract.go @@ -42,7 +42,7 @@ func (p *IntMap) Scan(src interface{}) error { type Report struct { // Generated - Received time.Time // Only from DB + Received time.Time `json:"-"` // Only from DB Date string `json:"date,omitempty"` Address string `json:"address,omitempty"` @@ -410,7 +410,9 @@ func (r *Report) FieldNames() []string { } func (r Report) Value() (driver.Value, error) { - return json.Marshal(r) + // This needs to be string, yet we read back bytes.. + bs, err := json.Marshal(r) + return string(bs), err } func (r *Report) Scan(value interface{}) error {