- शिप
- 23 सितंबर 2026 को 2:40 pm बजे UTC
- लेखक
- Kamo
- Commit
- 1f715e4
डीडीएल: **************** (column + आंशिक-अनुकूल सूचकांक) पहले से ही उत्पादन और **************** (one-time catch-up), पहले से ही रन — 19,373 पंक्तियाँ, सभी अपनी वास्तविक गणना पर उतरे। ************* अब do logs.translation count बिल्कुल उस पंक्ति के लिए प्रतिबद्ध log translations से, उसी REQUIRES NEW लेनदेन में समान प्रत्येक इलाके में लिखते हैं: +1 वास्तव में नए स्थानीय लोगों के लिए, पहले से ही वहाँ एक की पुनः सेव के लिए बदला नहीं जा सकता (a retry or a sanitization-rule re-trigger नष्ट कर देता है-तो-reinserts the same locale — net शून्य). @RetryOnDbConflict में लपेटा गया, इस कोडबेस के विचार को एक लिखने के लिए मिलान किया गया है कि एक दुर्लभ समवर्ती ओवरलैप (अन्तिम पोस्ट-कमिट अनुवाद अभी भी उड़ान में जब 5-मिनट की वापसी स्वीप भी उसी अभी भी पूर्ण पंक्ति को चुन सकता है) 40001 हो सकता है। ************* एक सादे अनुक्रमित WHERE के साथ कि काउंटर पढ़ने ************* ग्रुप बाय के बजाय .. प्रतिबद्ध logs लेफ्ट जॉइन प्रतिबद्ध log translations यह हर 5 मिनट में चला - उत्पादन में मापा: ~ 14K ~ 750ms (~406K-row अनुवाद तालिका का एक पूर्ण स्कैन), EXPLAIN के माध्यम से सत्यापित ANALYZE इससे पहले: 751ms -> 19.6ms (Index only Scan, Heap Fetches: 0) उसी के लिए खाली परिणाम। एक सहसंबंधित प्रति पंक्ति subquery फिर से लिखना पहले कोशिश की और खारिज कर दिया गया: EXPLAIN उत्पादन पर ANALYZE ने इसे मूल की तुलना में 13.9s ~ 18x WORSE पर दिखाया - YugabyteDB की प्रति-RPC लागत कई छोटे सहसंबंधित लुकअप के लिए हावी है, यही कारण है कि यह एक बनाए रखा स्तंभ है, न कि एक स्मार्ट जुड़ना।.
