A safe MySQL upgrade that wasn't so safe
Summary
A MySQL upgrade on a replicated setup caused data integrity issues when an AUTO_INCREMENT column led to differing IDs between source and replica. The post explains how binary log formats (STATEMENT, ROW, MIXED) can cause some updates to replay differently on replicas, resulting in mismatched foreign keys across related tables. It emphasizes testing upgrades on replicas and understanding binlog_format behavior to avoid production disasters.