https://blog.koehntopp.info/2020/07/27/mysql-transactions.html
• MySQL Transactions - the physical side. Looking at how MySQL InnoDB handles transactions on the physical media, enabling rollback and commit. Introduces a number of important concepts: The Undo Log, the Redo Log, the Doublewrite Buffer, and the corrosponding in memory structures, the Log Buffer and the InnoDB Buffer Pool, as well as the concept of a page.
https://blog.koehntopp.info/2020/07/27/mysql-commit-size-and-speed.html
• MySQL Commit Size and Speed. This article has code in Github, in mysql-commit-size/. We benchmark MySQL write speed as a function of number of rows written per commit.
https://blog.koehntopp.info/2020/07/28/mysql-connection-scoped-state.html
• MySQL Connection Scoped State. Looking at things that are stateful and attached to a MySQL connection, and are lost on disconnect.
https://blog.koehntopp.info/2020/07/29/mysql-transactions-the-logical-view.html
• MySQL Transactions - the logical view. This article introduces the concept of TRANSACTION ISOLATION LEVEL and how pushing things into the Undo Log, while a necessity to implement ROLLBACK for a Writer, enables features for a Reader.
https://blog.koehntopp.info/2020/07/30/mysql-transactions-writing-data.html
• MySQL Transactions - writing data. This article has code in Github, in mysql-transactions-counter. We increment a counter in the database, with multiple concurrent writers, and see what happens.