code: func (c *Coordinate) batchUpdate() {
  	for {
  		select {
  		case <-time.After(c.srv.config.CoordinateUpdatePeriod):
  			if err := c.batchApplyUpdates(); err != nil {
  				c.srv.logger.Printf("[WARN] consul.coordinate: Batch update failed: %v", err)
  			}
  		case <-c.srv.shutdownCh:
  			return
  		}
  	}
  }
docs: // batchUpdate is a long-running routine that flushes pending coordinates to the
  // Raft log in batches.