Hacker News
A safe MySQL upgrade that wasn't so safe
The upgrade introduced an AUTO_INCREMENT primary key on table X, causing the source and replica to assign different IDs because MySQL’s mixed binary-log format applied statement-based replication for five related tables but row-based replication for the one table that also contained an AUTO_INCREMENT column. Consequently, that table received mismatched foreign-key IDs, breaking its references while the other tables remained consistent.