From 7ee80e430479c937b12028b9d6b989b6b60a78b2 Mon Sep 17 00:00:00 2001 From: Andre Klapper Date: Thu, 30 Oct 2025 15:01:44 +0100 Subject: [PATCH] Diviner: Remove line about MySQL issues with indexes for tuple search Summary: Older MySQL versions had performance issues in query optimization for tuple comparisons in an IN clause. These issues were mostly fixed for MySQL 5.6; see https://bugs.mysql.com/bug.php?id=31188 While there are still some issues (e.g. https://bugs.mysql.com/bug.php?id=115190), nowadays tuple search index usage is generally supported. Phorge requires MySQL 8 since rP555fb3a8 / T16107. So this sentence is now moot. Test Plan: * Search the interwebs * Run `./bin/diviner generate`, read http://phorge.localhost/book/contrib/article/database/ Reviewers: O1 Blessed Committers, valerio.bozzolan Reviewed By: O1 Blessed Committers, valerio.bozzolan Subscribers: tobiaswiese, valerio.bozzolan, Matthew, Cigaryno Differential Revision: https://we.phorge.it/D26472 --- src/docs/contributor/database.diviner | 4 ---- 1 file changed, 4 deletions(-) diff --git a/src/docs/contributor/database.diviner b/src/docs/contributor/database.diviner index a8a99efdb8..4bc37dc6bc 100644 --- a/src/docs/contributor/database.diviner +++ b/src/docs/contributor/database.diviner @@ -115,10 +115,6 @@ Create all indexes necessary for fast query execution in most cases. Don't create indexes which are not used. You can analyze queries @{article:Using DarkConsole}. -Older MySQL versions are not able to use indexes for tuple search: -`(a, b) IN ((%s, %d), (%s, %d))`. Use `AND` and `OR` instead: -`((a = %s AND b = %d) OR (a = %s AND b = %d))`. - Foreign Keys ============ -- 2.51.2