AWS contributes a fix for MySQL commits that freeze under big transactions
BOLT cuts binlog commit latency for huge transactions from minutes to about two seconds, and AWS has sent the optimisation back to community MySQL.
AWS has published and contributed BOLT, Binary Log Optimization for Large Transactions, to community MySQL. It targets a specific, painful bottleneck: when a transaction carrying gigabytes of changes commits, MySQL has to serialise writes to the binlog through a global lock, so a single large transaction can freeze every other commit on the server for minutes.
The numbers are stark. Without BOLT, committing a 50 GiB transaction takes about seven minutes and crash recovery for the same transaction takes about four minutes. With BOLT, both drop to roughly 2 to 2.5 seconds and about 0.1 seconds, regardless of transaction size. BOLT works by promoting a transaction’s existing spill file straight into the binlog sequence instead of copying its events into the main file, so commit cost stops scaling with transaction size.
BOLT has already been running inside Amazon Aurora MySQL since version 1.22.0, on by default across Aurora MySQL 2.x, 3.x and 8.4.x. AWS has now contributed it back upstream, where it’s planned for a future MySQL innovation release rather than shipping in the current GA line.
Why it matters: if you’ve ever had a bulk load, migration or batch job stall unrelated writes on a MySQL server, this is the fix for that specific pain, not a general tuning tip. It’s also a reminder that Aurora has been quietly running patches that the open-source project doesn’t have yet.
The caveat: this isn’t in community MySQL today. There’s no version number or date for the innovation release that will carry it.