• Alexander Barkov's avatar
    MDEV-26664 Store UUIDs in a more efficient manner · b9f19f7e
    Alexander Barkov authored
    UUID values
    
      llllllll-mmmm-Vhhh-vsss-nnnnnnnnnnnn
    
    are now stored as
    
      nnnnnnnnnnnn-vsss-Vhhh-mmmm-llllllll
    
    inside the record:
    
    - the groups (segments separated by dash) are reordered right-to-left.
    - the bytes inside the groups are not reordered (stored as before,
      in big-endian format).
    
    This provides a better sorting order: the earlier UUID was generated,
    the higher it appears in the ORDER BY output.
    
    Also, this change enables a good key prefix compression,
    because the constant part is now in the beginning, while
    the non-constant part (the timestamp) is in the end.
    b9f19f7e
sql_string.h 32.3 KB