{"id":3575,"date":"2026-04-04T17:01:09","date_gmt":"2026-04-04T17:01:09","guid":{"rendered":"https:\/\/kedar.nitty-witty.com\/blog\/?p=3575"},"modified":"2026-04-05T16:13:46","modified_gmt":"2026-04-05T16:13:46","slug":"how-to-fix-write-latency-in-mysql-8-4-upgrade","status":"publish","type":"post","link":"https:\/\/kedar.nitty-witty.com\/blog\/how-to-fix-write-latency-in-mysql-8-4-upgrade","title":{"rendered":"How to fix write latency in MySQL 8.4 Upgrade"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">During any <strong>MySQL major version upgrade<\/strong>, especially when moving from 8.0 to 8.4, it\u2019s not just about compatibility checks. Subtle default changes can directly impact <strong>MySQL performance tuning<\/strong>, and if you\u2019re not watching closely, they can show up as unexpected latency or throughput issues.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This is a tale from a MySQL 8.4 upgrade causing write latency and the default <strong>changes<\/strong> of <code>innodb_change_buffering<\/code>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">InnoDB\u2019s change buffer (<code>innodb_change_buffering<\/code>) used to be an important optimisation for write-heavy workloads. However, in <strong>MySQL 8.4, it is disabled by default<\/strong>. Remember, it is <strong><em>disabled<\/em>, not deprecated<\/strong> (at least as of now).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This blog post walks through a small but practical use case and what it means for real-world systems.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">What the change buffer was for<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">InnoDB\u2019s change buffer (formerly insert buffer) was designed for secondary indexes when the required leaf page is not present in the buffer pool.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Instead of performing a random read to fetch that page just to apply an insert, delete-mark, or purge operation, InnoDB records the change in the change buffer and merges it later.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">On spinning disks, where random seeks were expensive and sequential I\/O was cheaper, this provided a real performance benefit and played a role in <strong>MySQL write optimization<\/strong>. I have it covered in my previous blog \/ podcast below.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Reference: <a href=\"https:\/\/kedar.nitty-witty.com\/blog\/mysql-change-buffer-what-when-and-faq\" target=\"_blank\" rel=\"noopener\" title=\"\">https:\/\/kedar.nitty-witty.com\/blog\/mysql-change-buffer-what-when-and-faq<\/a><br>Podcast: <a href=\"https:\/\/www.youtube.com\/watch?v=vt78zI_fwfU\" target=\"_blank\" rel=\"noopener\" title=\"\">https:\/\/www.youtube.com\/watch?v=vt78zI_fwfU<\/a><\/p>\n\n\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">Why is <code>innodb_change_buffering<\/code> off by default in 8.4?<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\"><em>(drive slow, sharp U turn ahead)<\/em><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">1. Database hardware has changed<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">On most modern systems, storage is SSD\/NVMe or RAID-backed, where random I\/O is significantly faster compared to traditional HDDs.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The original benefit of change buffering was to avoid slow random disk reads for secondary index updates. That bottleneck largely no longer exists.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">So effectively:<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">If random I\/O is no longer expensive, avoiding it brings less value for most <strong>MySQL workloads<\/strong>.<\/p>\n<\/blockquote>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">2. Additional overhead<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Maintaining the change buffer is not free.<br>&#8211; Extra writes<br>&#8211; Additional metadata tracking<br>&#8211; Background merge operations<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">All of this adds overhead to write operations and can impact <strong>MySQL query performance<\/strong>, especially under sustained write load.<br>Source: <a href=\"https:\/\/lefred.be\/content\/mysql-8-4-lts-new-production-ready-defaults-for-innodb\/\" target=\"_blank\" rel=\"noopener nofollow\" title=\"\">mysql-8-4-lts-new-production-ready-defaults-for-innodb<\/a><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">So question arise:<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">Does the optimization still justify the cost?<\/p>\n<\/blockquote>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<p class=\"wp-block-paragraph\">In my understanding, this is not a case of \u201c<strong>Change buffer is useless<\/strong>\u201d but rather \u201c<strong>Change buffer is not beneficial enough<\/strong>\u201d<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<p class=\"wp-block-paragraph\">This aligns with MySQL 8.4 LTS philosophy of more practical defaults for <strong>MySQL performance optimization<\/strong>:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">innodb_change_buffering: all \u2192 none<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Effectively disabling it out of the box. But <strong>why disable it and not remove it?<\/strong> I can\u2019t speak on behalf of MySQL, but I\u2019m actually glad it\u2019s still there. <strong>BUT wait there is more to this story.<\/strong> <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Let me first share what drew me to write this blog.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">8.4 Upgrade and Write Latency<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">A &#8220;friend&#8221; of mine upgraded from MySQL 8.0 to 8.4 and quickly hit the panic button, as their <strong>write latency<\/strong> almost doubled. From ~2ms to ~4ms. Now, I may joke about it saying &#8220;dude, that&#8217;s just 2ms&#8221; but for latency-sensitive systems, that\u2019s significant for <strong>database performance<\/strong>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">I know, you being a smart reader would have doubted <strong>innodb_change_buffering<\/strong> behaviour and so did I.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">We reverted:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">innodb_change_buffering = all<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u2026and the latency dropped back to expected levels. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><em><strong>You probably already know this, and maybe I did bait you a bit with the \u201chow to fix\u201d title. But in reality, I just wanted to put this out there for someone who might find it useful.<\/strong><\/em> <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">and now it&#8217;s time for the &#8220;more to this story&#8221; or &#8220;sharp U turn&#8221;&#8230;<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">The Changing story of Change Buffering<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">I have been pointed out that in <a href=\"https:\/\/dev.mysql.com\/doc\/relnotes\/mysql\/9.6\/en\/news-9-5-0.html\" target=\"_blank\" rel=\"noopener nofollow\" title=\"\">9.5 release notes<\/a> covers that <strong>innodb_change_buffering<\/strong> is again defaults to <strong>all<\/strong>. (thanks JFG, JS)&#8230; I had totally over-looked this part and only checked that it was not deprecated in 9.6.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">We can take a hint from the <a href=\"https:\/\/github.com\/mysql\/mysql-server\/commit\/787796af4a3b13c9684e98acfd8ab679519d5963\" target=\"_blank\" rel=\"noopener nofollow\" title=\"\">commit log<\/a> that gives us some reasoning for this change.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>WL#16967 InnoDB : Enable innodb_change_buffer by default\n\nDescription: In <strong>8.4, innodb_change_buffering was turned OFF<\/strong> (by setting it to NONE) by default <strong>due to certain stability issues<\/strong> identified with change buffering. \nNow that these <strong>issues are fixed in 9.3<\/strong>, innodb_change_buffering can be turned ON (by setting it to ALL) by default in the 9.x LTS.<\/code><\/pre>\n\n\n\n<h1 class=\"wp-block-heading\">Learning for MySQL users<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">What I understand here is, in MySQL 8.4 reason for change was &#8220;improved hardware&#8221; or &#8220;stability issues&#8221;. While in MySQL 9.5 \/ 9.6, the reason for the change was &#8220;stability improvements&#8221;.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Regardless, If I were the user, I&#8217;d stay with the default and review the latency impact. If the impact is negative, I&#8217;d adjust the innodb_change_buffering to &#8220;all&#8221; (or whatever was my previous settings) and observe. Also remember, this default changes back to &#8220;all&#8221; in MySQL 9.6.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><s>Maybe it will stay, maybe it won\u2019t. Defaults have already shifted, and future versions may evolve further as MySQL continues to refine&#8230; <\/s>but this brings us to the important takeaway:<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">Always test every aspect of your workload during a <strong>MySQL upgrade<\/strong>.<\/p>\n<\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">Especially when even a few milliseconds of latency change can have real impact on <strong>MySQL performance tuning and query optimization<\/strong>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">Final note<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">I recently covered a <strong>MySQL Major Version Upgrade Checklist<\/strong> in a podcast, focused on practical upgrade strategies, validation steps, and avoiding surprises like this one.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">If you\u2019re planning an upgrade, it might be a useful reference.<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe title=\"MySQL Major Version Upgrade Checklist (Zero Downtime Strategy)\" width=\"500\" height=\"281\" src=\"https:\/\/www.youtube.com\/embed\/LKilfCJI_y4?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n","protected":false},"excerpt":{"rendered":"During any MySQL major version upgrade, especially when moving from 8.0 to 8.4, it\u2019s not just about compatibility checks. Subtle default changes can directly impact MySQL performance tuning, and if&hellip;\n","protected":false},"author":1,"featured_media":3576,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[8,6],"tags":[1196,1199,1200,1006,1186,1193,1091,1197,1192],"class_list":["post-3575","post","type-post","status-publish","format-standard","has-post-thumbnail","category-mysql","category-technical","tag-innodb_change_buffering","tag-mysql-8-0-to-8-4","tag-mysql-8-4-upgrade","tag-mysql-best-practices","tag-mysql-configuration-tuning","tag-mysql-latency","tag-mysql-upgrade","tag-mysql-upgrade-issues","tag-mysql-write-performance"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.10 - aioseo.com -->\n\t<meta name=\"description\" content=\"Upgrading to MySQL 8.4? Learn why innodb_change_buffering is disabled by default and how it impacts write performance, latency, and MySQL performance tuning.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Kedar\"\/>\n\t<meta name=\"google-site-verification\" content=\"_Bu1h5r0PxIC0D2jBVdmYN45RTeG9ogcX85XLkbG1qA\" \/>\n\t<meta name=\"msvalidate.01\" content=\"116B62074CBCA1BA99B8CCE09CCF2FB8\" \/>\n\t<meta name=\"keywords\" content=\"innodb_change_buffering,mysql 8.0 to 8.4,mysql 8.4 upgrade,mysql best practices,mysql configuration tuning,mysql latency,mysql upgrade,mysql upgrade issues,mysql write performance\" \/>\n\t<link rel=\"canonical\" href=\"https:\/\/kedar.nitty-witty.com\/blog\/how-to-fix-write-latency-in-mysql-8-4-upgrade\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.10\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"Change Is Inevitable | Kedar Vaijanapurkar&#039;s Blog for MySQL, technology and various subjects\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"How to fix write latency in MySQL 8.4 Upgrade | Change Is Inevitable\" \/>\n\t\t<meta property=\"og:description\" content=\"Upgrading to MySQL 8.4? Learn why innodb_change_buffering is disabled by default and how it impacts write performance, latency, and MySQL performance tuning.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/kedar.nitty-witty.com\/blog\/how-to-fix-write-latency-in-mysql-8-4-upgrade\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2026-04-04T17:01:09+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-04-05T16:13:46+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary\" \/>\n\t\t<meta name=\"twitter:title\" content=\"How to fix write latency in MySQL 8.4 Upgrade | Change Is Inevitable\" \/>\n\t\t<meta name=\"twitter:description\" content=\"Upgrading to MySQL 8.4? Learn why innodb_change_buffering is disabled by default and how it impacts write performance, latency, and MySQL performance tuning.\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/how-to-fix-write-latency-in-mysql-8-4-upgrade#article\",\"name\":\"How to fix write latency in MySQL 8.4 Upgrade | Change Is Inevitable\",\"headline\":\"How to fix write latency in MySQL 8.4 Upgrade\",\"author\":{\"@id\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/author\\\/admin#author\"},\"publisher\":{\"@id\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/#person\"},\"image\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/04\\\/mysql-8.4-upgrade-change-buffering.avif\",\"width\":1408,\"height\":768},\"datePublished\":\"2026-04-04T17:01:09+00:00\",\"dateModified\":\"2026-04-05T16:13:46+00:00\",\"inLanguage\":\"en-US\",\"commentCount\":4,\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/how-to-fix-write-latency-in-mysql-8-4-upgrade#webpage\"},\"isPartOf\":{\"@id\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/how-to-fix-write-latency-in-mysql-8-4-upgrade#webpage\"},\"articleSection\":\"MySQL, Technical, innodb_change_buffering, MySQL 8.0 to 8.4, MySQL 8.4 upgrade, MySQL Best Practices, MySQL configuration tuning, MySQL latency, MySQL upgrade, MySQL upgrade issues, MySQL write performance\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/how-to-fix-write-latency-in-mysql-8-4-upgrade#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog#listItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/category\\\/technical#listItem\",\"name\":\"Technical\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/category\\\/technical#listItem\",\"position\":2,\"name\":\"Technical\",\"item\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/category\\\/technical\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/how-to-fix-write-latency-in-mysql-8-4-upgrade#listItem\",\"name\":\"How to fix write latency in MySQL 8.4 Upgrade\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog#listItem\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/how-to-fix-write-latency-in-mysql-8-4-upgrade#listItem\",\"position\":3,\"name\":\"How to fix write latency in MySQL 8.4 Upgrade\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/category\\\/technical#listItem\",\"name\":\"Technical\"}}]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/#person\",\"name\":\"Kedar\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/how-to-fix-write-latency-in-mysql-8-4-upgrade#personImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/be1f7021485c325d92cc4c5d961accb9c1af72b1b11281a790f7f4f066ef10d3?s=96&d=mm&r=g\",\"width\":96,\"height\":96,\"caption\":\"Kedar\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/author\\\/admin#author\",\"url\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/author\\\/admin\",\"name\":\"Kedar\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/how-to-fix-write-latency-in-mysql-8-4-upgrade#authorImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/be1f7021485c325d92cc4c5d961accb9c1af72b1b11281a790f7f4f066ef10d3?s=96&d=mm&r=g\",\"width\":96,\"height\":96,\"caption\":\"Kedar\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/how-to-fix-write-latency-in-mysql-8-4-upgrade#webpage\",\"url\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/how-to-fix-write-latency-in-mysql-8-4-upgrade\",\"name\":\"How to fix write latency in MySQL 8.4 Upgrade | Change Is Inevitable\",\"description\":\"Upgrading to MySQL 8.4? Learn why innodb_change_buffering is disabled by default and how it impacts write performance, latency, and MySQL performance tuning.\",\"inLanguage\":\"en-US\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/how-to-fix-write-latency-in-mysql-8-4-upgrade#breadcrumblist\"},\"author\":{\"@id\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/author\\\/admin#author\"},\"creator\":{\"@id\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/author\\\/admin#author\"},\"image\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/04\\\/mysql-8.4-upgrade-change-buffering.avif\",\"@id\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/how-to-fix-write-latency-in-mysql-8-4-upgrade\\\/#mainImage\",\"width\":1408,\"height\":768},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/how-to-fix-write-latency-in-mysql-8-4-upgrade#mainImage\"},\"datePublished\":\"2026-04-04T17:01:09+00:00\",\"dateModified\":\"2026-04-05T16:13:46+00:00\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/\",\"name\":\"..::CHANGE is INEVITABLE::..\",\"description\":\"Kedar Vaijanapurkar's Blog for MySQL, technology and various subjects\",\"inLanguage\":\"en-US\",\"publisher\":{\"@id\":\"https:\\\/\\\/kedar.nitty-witty.com\\\/blog\\\/#person\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"How to fix write latency in MySQL 8.4 Upgrade | Change Is Inevitable","description":"Upgrading to MySQL 8.4? Learn why innodb_change_buffering is disabled by default and how it impacts write performance, latency, and MySQL performance tuning.","canonical_url":"https:\/\/kedar.nitty-witty.com\/blog\/how-to-fix-write-latency-in-mysql-8-4-upgrade","robots":"max-image-preview:large","keywords":"innodb_change_buffering,mysql 8.0 to 8.4,mysql 8.4 upgrade,mysql best practices,mysql configuration tuning,mysql latency,mysql upgrade,mysql upgrade issues,mysql write performance","webmasterTools":{"google-site-verification":"_Bu1h5r0PxIC0D2jBVdmYN45RTeG9ogcX85XLkbG1qA","msvalidate.01":"116B62074CBCA1BA99B8CCE09CCF2FB8","miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/kedar.nitty-witty.com\/blog\/how-to-fix-write-latency-in-mysql-8-4-upgrade#article","name":"How to fix write latency in MySQL 8.4 Upgrade | Change Is Inevitable","headline":"How to fix write latency in MySQL 8.4 Upgrade","author":{"@id":"https:\/\/kedar.nitty-witty.com\/blog\/author\/admin#author"},"publisher":{"@id":"https:\/\/kedar.nitty-witty.com\/blog\/#person"},"image":{"@type":"ImageObject","url":"https:\/\/kedar.nitty-witty.com\/blog\/wp-content\/uploads\/2026\/04\/mysql-8.4-upgrade-change-buffering.avif","width":1408,"height":768},"datePublished":"2026-04-04T17:01:09+00:00","dateModified":"2026-04-05T16:13:46+00:00","inLanguage":"en-US","commentCount":4,"mainEntityOfPage":{"@id":"https:\/\/kedar.nitty-witty.com\/blog\/how-to-fix-write-latency-in-mysql-8-4-upgrade#webpage"},"isPartOf":{"@id":"https:\/\/kedar.nitty-witty.com\/blog\/how-to-fix-write-latency-in-mysql-8-4-upgrade#webpage"},"articleSection":"MySQL, Technical, innodb_change_buffering, MySQL 8.0 to 8.4, MySQL 8.4 upgrade, MySQL Best Practices, MySQL configuration tuning, MySQL latency, MySQL upgrade, MySQL upgrade issues, MySQL write performance"},{"@type":"BreadcrumbList","@id":"https:\/\/kedar.nitty-witty.com\/blog\/how-to-fix-write-latency-in-mysql-8-4-upgrade#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/kedar.nitty-witty.com\/blog#listItem","position":1,"name":"Home","item":"https:\/\/kedar.nitty-witty.com\/blog","nextItem":{"@type":"ListItem","@id":"https:\/\/kedar.nitty-witty.com\/blog\/category\/technical#listItem","name":"Technical"}},{"@type":"ListItem","@id":"https:\/\/kedar.nitty-witty.com\/blog\/category\/technical#listItem","position":2,"name":"Technical","item":"https:\/\/kedar.nitty-witty.com\/blog\/category\/technical","nextItem":{"@type":"ListItem","@id":"https:\/\/kedar.nitty-witty.com\/blog\/how-to-fix-write-latency-in-mysql-8-4-upgrade#listItem","name":"How to fix write latency in MySQL 8.4 Upgrade"},"previousItem":{"@type":"ListItem","@id":"https:\/\/kedar.nitty-witty.com\/blog#listItem","name":"Home"}},{"@type":"ListItem","@id":"https:\/\/kedar.nitty-witty.com\/blog\/how-to-fix-write-latency-in-mysql-8-4-upgrade#listItem","position":3,"name":"How to fix write latency in MySQL 8.4 Upgrade","previousItem":{"@type":"ListItem","@id":"https:\/\/kedar.nitty-witty.com\/blog\/category\/technical#listItem","name":"Technical"}}]},{"@type":"Person","@id":"https:\/\/kedar.nitty-witty.com\/blog\/#person","name":"Kedar","image":{"@type":"ImageObject","@id":"https:\/\/kedar.nitty-witty.com\/blog\/how-to-fix-write-latency-in-mysql-8-4-upgrade#personImage","url":"https:\/\/secure.gravatar.com\/avatar\/be1f7021485c325d92cc4c5d961accb9c1af72b1b11281a790f7f4f066ef10d3?s=96&d=mm&r=g","width":96,"height":96,"caption":"Kedar"}},{"@type":"Person","@id":"https:\/\/kedar.nitty-witty.com\/blog\/author\/admin#author","url":"https:\/\/kedar.nitty-witty.com\/blog\/author\/admin","name":"Kedar","image":{"@type":"ImageObject","@id":"https:\/\/kedar.nitty-witty.com\/blog\/how-to-fix-write-latency-in-mysql-8-4-upgrade#authorImage","url":"https:\/\/secure.gravatar.com\/avatar\/be1f7021485c325d92cc4c5d961accb9c1af72b1b11281a790f7f4f066ef10d3?s=96&d=mm&r=g","width":96,"height":96,"caption":"Kedar"}},{"@type":"WebPage","@id":"https:\/\/kedar.nitty-witty.com\/blog\/how-to-fix-write-latency-in-mysql-8-4-upgrade#webpage","url":"https:\/\/kedar.nitty-witty.com\/blog\/how-to-fix-write-latency-in-mysql-8-4-upgrade","name":"How to fix write latency in MySQL 8.4 Upgrade | Change Is Inevitable","description":"Upgrading to MySQL 8.4? Learn why innodb_change_buffering is disabled by default and how it impacts write performance, latency, and MySQL performance tuning.","inLanguage":"en-US","isPartOf":{"@id":"https:\/\/kedar.nitty-witty.com\/blog\/#website"},"breadcrumb":{"@id":"https:\/\/kedar.nitty-witty.com\/blog\/how-to-fix-write-latency-in-mysql-8-4-upgrade#breadcrumblist"},"author":{"@id":"https:\/\/kedar.nitty-witty.com\/blog\/author\/admin#author"},"creator":{"@id":"https:\/\/kedar.nitty-witty.com\/blog\/author\/admin#author"},"image":{"@type":"ImageObject","url":"https:\/\/kedar.nitty-witty.com\/blog\/wp-content\/uploads\/2026\/04\/mysql-8.4-upgrade-change-buffering.avif","@id":"https:\/\/kedar.nitty-witty.com\/blog\/how-to-fix-write-latency-in-mysql-8-4-upgrade\/#mainImage","width":1408,"height":768},"primaryImageOfPage":{"@id":"https:\/\/kedar.nitty-witty.com\/blog\/how-to-fix-write-latency-in-mysql-8-4-upgrade#mainImage"},"datePublished":"2026-04-04T17:01:09+00:00","dateModified":"2026-04-05T16:13:46+00:00"},{"@type":"WebSite","@id":"https:\/\/kedar.nitty-witty.com\/blog\/#website","url":"https:\/\/kedar.nitty-witty.com\/blog\/","name":"..::CHANGE is INEVITABLE::..","description":"Kedar Vaijanapurkar's Blog for MySQL, technology and various subjects","inLanguage":"en-US","publisher":{"@id":"https:\/\/kedar.nitty-witty.com\/blog\/#person"}}]},"og:locale":"en_US","og:site_name":"Change Is Inevitable | Kedar Vaijanapurkar's Blog for MySQL, technology and various subjects","og:type":"article","og:title":"How to fix write latency in MySQL 8.4 Upgrade | Change Is Inevitable","og:description":"Upgrading to MySQL 8.4? Learn why innodb_change_buffering is disabled by default and how it impacts write performance, latency, and MySQL performance tuning.","og:url":"https:\/\/kedar.nitty-witty.com\/blog\/how-to-fix-write-latency-in-mysql-8-4-upgrade","article:published_time":"2026-04-04T17:01:09+00:00","article:modified_time":"2026-04-05T16:13:46+00:00","twitter:card":"summary","twitter:title":"How to fix write latency in MySQL 8.4 Upgrade | Change Is Inevitable","twitter:description":"Upgrading to MySQL 8.4? Learn why innodb_change_buffering is disabled by default and how it impacts write performance, latency, and MySQL performance tuning."},"aioseo_meta_data":{"post_id":"3575","title":null,"description":"Upgrading to MySQL 8.4? Learn why innodb_change_buffering is disabled by default and how it impacts write performance, latency, and MySQL performance tuning.","keywords":null,"keyphrases":{"focus":{"keyphrase":"MySQL 8.4","score":64,"analysis":{"keyphraseInTitle":{"score":9,"maxScore":9,"error":0},"keyphraseInDescription":{"score":9,"maxScore":9,"error":0},"keyphraseLength":{"score":9,"maxScore":9,"error":0,"length":2},"keyphraseInURL":{"score":5,"maxScore":5,"error":0},"keyphraseInIntroduction":{"score":3,"maxScore":9,"error":1},"keyphraseInSubHeadings":{"score":3,"maxScore":9,"error":1},"keyphraseInImageAlt":[],"keywordDensity":{"score":0,"type":"low","maxScore":9,"error":1}}},"additional":[]},"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":"","og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"Article","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":"-1","robots_max_videopreview":"-1","robots_max_imagepreview":"large","priority":null,"frequency":"default","location":null,"local_seo":null,"breadcrumb_settings":null,"limit_modified_date":false,"ai":{"faqs":[],"keyPoints":[],"titles":[],"descriptions":[],"socialPosts":{"email":[],"linkedin":[],"twitter":[],"facebook":[],"instagram":[]}},"created":"2026-04-04 16:28:27","updated":"2026-04-05 16:24:59","seo_analyzer_scan_date":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/kedar.nitty-witty.com\/blog\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">\u00bb<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/kedar.nitty-witty.com\/blog\/category\/technical\" title=\"Technical\">Technical<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">\u00bb<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tHow to fix write latency in MySQL 8.4 Upgrade\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/kedar.nitty-witty.com\/blog"},{"label":"Technical","link":"https:\/\/kedar.nitty-witty.com\/blog\/category\/technical"},{"label":"How to fix write latency in MySQL 8.4 Upgrade","link":"https:\/\/kedar.nitty-witty.com\/blog\/how-to-fix-write-latency-in-mysql-8-4-upgrade"}],"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/kedar.nitty-witty.com\/blog\/wp-json\/wp\/v2\/posts\/3575","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/kedar.nitty-witty.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/kedar.nitty-witty.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/kedar.nitty-witty.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/kedar.nitty-witty.com\/blog\/wp-json\/wp\/v2\/comments?post=3575"}],"version-history":[{"count":7,"href":"https:\/\/kedar.nitty-witty.com\/blog\/wp-json\/wp\/v2\/posts\/3575\/revisions"}],"predecessor-version":[{"id":3592,"href":"https:\/\/kedar.nitty-witty.com\/blog\/wp-json\/wp\/v2\/posts\/3575\/revisions\/3592"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/kedar.nitty-witty.com\/blog\/wp-json\/wp\/v2\/media\/3576"}],"wp:attachment":[{"href":"https:\/\/kedar.nitty-witty.com\/blog\/wp-json\/wp\/v2\/media?parent=3575"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/kedar.nitty-witty.com\/blog\/wp-json\/wp\/v2\/categories?post=3575"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kedar.nitty-witty.com\/blog\/wp-json\/wp\/v2\/tags?post=3575"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}