MySQL Percona XtraDB Cluster strict_mode compatibility

Greetings!

It appears that distribution/src/database/openfire_mysql.sql is in contention with some MySQL deployments using “Percona XtraDB Cluster” (PXC) due to lack of PK on 2 tables: ofPubsubNodeGroups and ofMucConversationLog. Under PXC with pxc_strict_mode = ENFORCING, every table undergoing DML (insert, delete, update) must have an explicit primary key. See Percona XtraDB Cluster strict mode - Percona XtraDB Cluster .

PXC should immediately return “ERROR 1105 (HY000)” to the JDBC client in this scenario, as I’ve confirmed in Openfire logs.

Hi Free! It’s been a while!

Thanks for reporting this. I don’t think we should frame this as a specific issue with PXC, but instead define this as a broader issue that needs improving. Having tables without a primary key is a code smell.

I’ve raised this ticket to track progress: OF-3373: Every table should have a primary key