- Shipped
- 23 września 2026 14:40 UTC
- Author
- Kamo
- Commit
- 1f715e4
DDL: (kolumna + indeks przyjazny stronie, stosowany do produkcja już) i * * * * * * * * * * * * * * * * * * (one- time catch- up, already run - 19,373 wierszy, wszystkie wylądowały na ich prawdziwym liczeniu). * * * * * * * * * * * * * * * * teraz utrzymuje commit _ logs.translation _ count dokładnie równy COUNT (*) From commit _ log _ translations for that row, in the same exempRES _ NEW transaction as każda locale write: + 1 dla prawdziwie nowego locale, bez zmian dla ponownego zapisu jednego już tam (ponowna próba lub reguła usypiania - ponownie-wyzwalacz usuwa - następnie - ponownie umieszcza to samo miejsce - zero netto). Zawinięty w @ RetriOnDbConflict, pasujący do konwencji codebase do zapisu, że rzadko concurrent- according (początkowe tłumaczenie postcommit nadal w locie, gdy 5-minutowe ponowne próby zamiatanie odbiera również ten sam niekompletny rząd) może 40001. Nie, nie, nie. czyta ten licznik ze zwykłą indeksowaną gdzie Nie, nie, nie. commit _ logs LEFT JOIN commit _ log _ translations wykonywana co 5 minut - mierzona w produkcji: ~ 14K połączeń przy ~ 750ms (pełne skanowanie tabeli tłumaczeń ~ 406K- wiersz), zweryfikowane przez EXPLAIN ANALYZE przed podłączeniem tego w: 751ms - > 19.6ms (indeks tylko skanować, Heap Fetches: 0) dla tego samego empty-wynik przypadku. Korelowane przepisywanie wiersza subquery zostało najpierw wypróbowane i odrzucone: EXPLAIN ANALYZE na produkcji pokazał go na 13.9s, ~ 18x WORSE niż oryginał - YugabyteDB per- koszt RPC dla wielu małych skorelowanych lookup dominuje, dlatego jest to utrzymywana kolumna, a nie Lepiej się dołącz.
