-
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.
Ole John Aske authoredIn 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