code: func newTikvTxnWithStartTS(store *tikvStore, startTS uint64) (*tikvTxn, error) {
  	ver := kv.NewVersion(startTS)
  	snapshot := newTiKVSnapshot(store, ver)
  	return &tikvTxn{
  		snapshot:  snapshot,
  		us:        kv.NewUnionStore(snapshot),
  		store:     store,
  		startTS:   startTS,
  		startTime: time.Now(),
  		valid:     true,
  		vars:      kv.DefaultVars,
  	}, nil
  }
docs: // newTikvTxnWithStartTS creates a txn with startTS.