• Brandon Nesterenko's avatar
    MDEV-20119: Implement the --do-domain-ids, --ignore-domain-ids, and... · c132bce1
    Brandon Nesterenko authored
    MDEV-20119: Implement the --do-domain-ids, --ignore-domain-ids, and --ignore-server-ids options for mysqlbinlog
    
    New Feature:
    ============
    Extend mariadb-binlog command-line tool to allow for filtering
    events using GTID domain and server ids. The functionality mimics
    that of a replica server’s DO_DOMAIN_IDS, IGNORE_DOMAIN_IDS, and
    IGNORE_SERVER_IDS from CHANGE MASTER TO. For completeness, this
    patch additionally adds the option --do-server-ids as an alias for
    --server-id, which now accepts a list of server ids instead of a
    single one.
    
    Example usage:
      mariadb-binlog --do-domain-ids=2,3,4 --do-server-ids=1,3
      master-bin.000001
    
    Functional Notes:
     1. --do-domain-ids cannot be combined with --ignore-domain-ids
     2. --do-server-ids cannot be combined with --ignore-server-ids
     3. A domain id filter can be combined with a server id filter
     4. When any new filter options are combined with the
    --gtid-strict-mode option, events from excluded domains/servers are
    not validated.
     5. Domain/server id filters can be combined with GTID ranges (i.e.
    specifications of --start-position and --stop-position). However,
    because the --stop-position option implicitly undertakes filtering
    to only output events within its range of domains, when combined
    with --do-domain-ids or --ignore-domain-ids, output will consist of
    the intersection between the filters. Specifically, with
    --do-domain-ids and --stop-position, only events with domain ids
    present in both argument lists will be output. Conversely, with
    --ignore-domain-ids and --stop-position, only events with domain ids
    present in the --stop-position and absent from the
    --ignore-domain-ids options will be output.
    
    Reviewed By
    ============
    Andrei Elkin <andrei.elkin@mariadb.com>
    c132bce1
rpl_mysqlbinlog_slave_consistency.result 41.1 KB