code: func (f *asyncFlusher) uploaderLoop() {
  	for chunk := range f.chunks {
  		ctx := f.ctx(chunk.index)
  		logging.Infof(ctx, "Chunk flush starting")
  		sent, err := f.upload(ctx, chunk)
  		f.mu.Lock()
  		if err == nil {
  			f.rowsSent += sent
  		} else {
  			f.errs = append(f.errs, err)
  		}
  		f.mu.Unlock()
  		logging.Infof(ctx, "Chunk flush finished")
  	}
  }
docs: // uploaderLoop runs in a separate goroutine.