<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Laravel on My Blog</title><link>https://thaig2pro.github.io/en/tags/laravel/</link><description>Recent content in Laravel on My Blog</description><generator>Hugo -- 0.146.0</generator><language>en</language><lastBuildDate>Mon, 28 Sep 2026 11:30:00 +0700</lastBuildDate><atom:link href="https://thaig2pro.github.io/en/tags/laravel/index.xml" rel="self" type="application/rss+xml"/><item><title>I Wrote the Index Escalation Threshold as a Number, Then Measured It and Found It Off by 15x to 100x</title><link>https://thaig2pro.github.io/en/posts/khong-them-index-viet-nguong-leo-thang-thanh-so/</link><pubDate>Mon, 28 Sep 2026 11:30:00 +0700</pubDate><guid>https://thaig2pro.github.io/en/posts/khong-them-index-viet-nguong-leo-thang-thanh-so/</guid><description>A voucher filter merged without an index on a table another team owns, with a written trigger for asking them. A bench later showed the trigger&amp;#39;s two clauses disagree by DB version.</description></item><item><title>A Merge Has Exactly Two Parents. The Line From a Third Branch Took Down Every API Route.</title><link>https://thaig2pro.github.io/en/posts/merge-conflict-copy-nhanh-thu-ba/</link><pubDate>Wed, 23 Sep 2026 14:42:00 +0700</pubDate><guid>https://thaig2pro.github.io/en/posts/merge-conflict-copy-nhanh-thu-ba/</guid><description>A conflict in the HTTP kernel was resolved by copying the whole file from a third branch. One middleware line came along, its class did not, and /api/* returned 500 for almost 18 hours.</description></item><item><title>The Import That Edited the Wrong Row for Years Because Two Tables Shared the Same IDs</title><link>https://thaig2pro.github.io/en/posts/bug-import-tra-nham-bang/</link><pubDate>Tue, 22 Sep 2026 17:00:00 +0700</pubDate><guid>https://thaig2pro.github.io/en/posts/bug-import-tra-nham-bang/</guid><description>A quota import took a product id and looked it up in a different table. Auto-increment made the ids overlap, so every run changed exactly one row and nobody noticed.</description></item><item><title>The Lock I Dropped During a Refactor, and the 1184 Green Tests That Didn't Notice</title><link>https://thaig2pro.github.io/en/posts/lock-bi-danh-roi-khi-refactor/</link><pubDate>Mon, 21 Sep 2026 10:00:00 +0700</pubDate><guid>https://thaig2pro.github.io/en/posts/lock-bi-danh-roi-khi-refactor/</guid><description>A row lock vanished during a refactor. The suite stayed green because sqlite silently ignores FOR UPDATE. How I made the lock visible to a test, and what it cost.</description></item></channel></rss>