• Sachin's avatar
    MDEV-20477 Merge binlog extended metadata support from the upstream · 967c14c0
    Sachin authored
    Cherry-pick the commits the mysql and some changes.
    WL#4618 RBR: extended table metadata in the binary log
    
    This patch extends Table Map Event. It appends some new fields for
    more metadata. The new metadata includes:
    - Signedness of Numberic Columns
    - Character Set of Character Columns and Binary Columns
    - Column Name
    - String Value of SET Columns
    - String Value of ENUM Columns
    - Primary Key
    - Character Set of SET Columns and ENUM Columns
    - Geometry Type
    
    Some of them are optional, the patch introduces a GLOBAL system
    variable to control it. It is binlog_row_metadata.
    - Scope:   GLOBAL
    - Dynamic: Yes
    - Type:    ENUM
    - Values:  {NO_LOG, MINIMAL, FULL}
    - Default: NO_LOG
      Only Signedness, character set and geometry type are logged if it is MINIMAL.
      Otherwise all of them are logged.
    
    Also add a binlog_type_info() to field, So that we can have extract
    relevant binlog info from field.
    967c14c0
log_event_server.cc 265 KB