code: func (f *tsFuture) Wait() (uint64, error) {
  	now := time.Now()
  	physical, logical, err := f.TSFuture.Wait()
  	metrics.TSFutureWaitDuration.Observe(time.Since(now).Seconds())
  	if err != nil {
  		return 0, errors.Trace(err)
  	}
  	ts := oracle.ComposeTS(physical, logical)
  	f.o.setLastTS(ts)
  	return ts, nil
  }
docs: // Wait implements the oracle.Future interface.