func setSnapshotTS(s *variable.SessionVars, sVal string) error { if sVal == "" { s.SnapshotTS = 0 return nil } t, err := types.ParseTime(sVal, mysql.TypeTimestamp, types.MaxFsp) if err != nil { return errors.Trace(err) } t1, err := t.Time.GoTime() ts := (t1.UnixNano() / int64(time.Millisecond)) << epochShiftBits s.SnapshotTS = uint64(ts) return errors.Trace(err) }