batch: add option for executing requests immediately

We make the default non-lazy, and will make the incoming gossip requests
lazy.
This commit is contained in:
Johan T. Halseth
2021-01-27 13:34:55 +01:00
parent 503536c1e4
commit e3b529939e
2 changed files with 24 additions and 1 deletions

View File

@@ -60,6 +60,12 @@ func (s *TimeScheduler) Execute(r *Request) error {
time.AfterFunc(s.duration, s.b.trigger)
}
s.b.reqs = append(s.b.reqs, &req)
// If this is a non-lazy request, we'll execute the batch immediately.
if !r.lazy {
go s.b.trigger()
}
s.mu.Unlock()
// Wait for the batch to process the request. If the batch didn't