code: func mvccDecode(encodedKey []byte) ([]byte, uint64, error) {
  	// Skip DataPrefix
  	remainBytes, key, err := codec.DecodeBytes(encodedKey, nil)
  	if err != nil {
  		// should never happen
  		return nil, 0, errors.Trace(err)
  	}
  	// if it's meta key
  	if len(remainBytes) == 0 {
  		return key, 0, nil
  	}
  	var ver uint64
  	remainBytes, ver, err = codec.DecodeUintDesc(remainBytes)
  	if err != nil {
  		// should never happen
  		return nil, 0, errors.Trace(err)
  	}
  	if len(remainBytes) != 0 {
  		return nil, 0, ErrInvalidEncodedKey
  	}
  	return key, ver, nil
  }
docs: // mvccDecode parses the origin key and version of an encoded key, if the encoded key is a meta key,
  // just returns the origin key.