Skip to content
  • Ole John Aske's avatar
    36585375
    Patch for bug#22174287 · 36585375
    Ole John Aske authored
    In order to distribute schema changes between mysqld's, all
    mysqld subscribe to changes to the ndb_schema system table.
    Furthermore, all mysqld's are made aware of each others subscriptions
    by subscribing on the TE_(UN)SUBSCRIBE events.
    
    The name of the event to subscribe on, is constructed from the
    table name with a postfix of either 'REPL$' or 'REPLF$', where
    the '...F' variant is only used when 'Full binlogging' is specified
    for the table.
    
    However, as different mysqld might have specified different
    'ndb-log-updated-*' options, this could lead to different
    'REPL*' events being subscribed from the mysqld's.
    
    Thus, the mysqld where not necessarily aware of each others
    existence, and the code waiting for schema distribution to complete
    did not work as designed.
    
    This patch handle the 'mysql.ndb_schema' table as a special table (which it is)
    and enforce the usage of the event name 'REPL$..' for that table -
    Independent of how the default binlogging options has been configured for
    other (user) tables.
    36585375
    Patch for bug#22174287
    Ole John Aske authored
    In order to distribute schema changes between mysqld's, all
    mysqld subscribe to changes to the ndb_schema system table.
    Furthermore, all mysqld's are made aware of each others subscriptions
    by subscribing on the TE_(UN)SUBSCRIBE events.
    
    The name of the event to subscribe on, is constructed from the
    table name with a postfix of either 'REPL$' or 'REPLF$', where
    the '...F' variant is only used when 'Full binlogging' is specified
    for the table.
    
    However, as different mysqld might have specified different
    'ndb-log-updated-*' options, this could lead to different
    'REPL*' events being subscribed from the mysqld's.
    
    Thus, the mysqld where not necessarily aware of each others
    existence, and the code waiting for schema distribution to complete
    did not work as designed.
    
    This patch handle the 'mysql.ndb_schema' table as a special table (which it is)
    and enforce the usage of the event name 'REPL$..' for that table -
    Independent of how the default binlogging options has been configured for
    other (user) tables.
Loading