| package dataframe |
| |
| import ( |
| "time" |
| |
| "go.skia.org/infra/go/timer" |
| "go.skia.org/infra/go/vcsinfo" |
| "go.skia.org/infra/perf/go/ptracestore" |
| |
| "go.skia.org/infra/go/sklog" |
| ) |
| |
| var vcs vcsinfo.VCS |
| |
| // StartWarmer runs a query that extends over the last year of data to keep the |
| // tiles warm in the disk cache. |
| func StartWarmer(v vcsinfo.VCS) { |
| vcs = v |
| go warmer() |
| } |
| |
| func warmer() { |
| onestep() |
| for range time.Tick(time.Hour) { |
| onestep() |
| } |
| } |
| |
| func onestep() { |
| defer timer.New("Warmer onestep").Stop() |
| end := time.Now() |
| begin := time.Now().Add(-365 * 24 * time.Hour) |
| colHeaders, commitIDs, skip := getRange(vcs, begin, end, true) |
| matches := func(key string) bool { |
| return false |
| } |
| _, err := _new(colHeaders, commitIDs, matches, ptracestore.Default, nil, skip) |
| if err != nil { |
| sklog.Errorf("Failed building the dataframe while warming: %s", err) |
| } |
| |
| } |