Comment 10 for bug 1098360

Revision history for this message
Przemek (pmalkowski) wrote :

IMHO for PS not changing Debian's init scripts can make sense, but XtraDB Cluster is a much different product.
So after a new node joins the cluster for the first time, it's /etc/mysql/debian.cnf is no longer valid.

Also the upgrade_system_tables_if_necessary and check_for_crashed_tables parts of debian-start makes little to no sense on PXC.
The upgrade_system_tables_if_necessary will execute mysql_upgrade each time it won't see the mysql_upgrade_info file in place. So if an existing node is re-created with full SST, it won't get the mysql_upgrade_info file copied over with xtrabackup. The effect is that this node will work fine until you restart it. On restart, debian-start will notice there is no mysql_upgrade_info present, so it will fire mysql_upgrade, which does all the ALTERs for tables in mysql database whether those need an upgrade or not. And even though such ALTER fails on the node it's run on, still will be replicated via wsrep to other nodes making GRA files and errors on them. Just try doing "ALTER TABLE test.foo engine=innodb" on any node.