# HG changeset patch # User Ted Unangst # Date 1717654946 14400 # Thu Jun 06 02:22:26 2024 -0400 # Node ID da9bb780df2ef0eae99949fa1fccb83f4d747d15 # Parent 2963f5fa2a131aac88d15e0fb3db80bc42c6099b fix some bugs in fetch tracker diff --git a/web.go b/web.go --- a/web.go +++ b/web.go @@ -1230,7 +1230,7 @@ dlog.Printf("saved %d new fetches", count) } -var trackchan = make(chan Track) +var trackchan = make(chan Track, 4) var dumptracks = make(chan chan bool) func tracker() { @@ -1251,11 +1251,13 @@ case c := <-dumptracks: if len(tracks) > 0 { savetracks(tracks) + tracks = make(map[string][]string) } c <- true case <-endoftheworld: if len(tracks) > 0 { savetracks(tracks) + tracks = make(map[string][]string) } readyalready <- true return @@ -1277,7 +1279,10 @@ func trackback(xid string, r *http.Request) { who := requestActor(r) if who != "" { - trackchan <- Track{xid: xid, who: who} + select { + case trackchan <- Track{xid: xid, who: who}: + default: + } } }