POFile:+translate timeouts

Bug #730391 reported by Robert Collins
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Launchpad itself
Fix Released
Critical
Robert Collins

Bug Description

 19 SELECT TranslationMessage.comment, TranslationMessage.date_created, TranslationMessage.date_revie ... gstr3, -$INT), COALESCE(msgstr4, -$INT), COALESCE(msgstr5, -$INT), date_created DESC ) LIMIT $INT:
   GET: 19 Robots: 0 Local: 19
      4 https://translations.launchpad.net/openobject-addons/6.0/+pots/share/ca/+translate (POFile:+translate)
       OOPS-1891B1975, OOPS-1891C2210, OOPS-1891E2220, OOPS-1891H2179
      2 https://translations.edge.launchpad.net/calibre/trunk/+pots/calibre/ca/+translate (POFile:+translate)
       OOPS-1891EC998, OOPS-1891ED951
      2 https://translations.launchpad.net/habari/trunk/+pots/habari/de/+translate (POFile:+translate)
       OOPS-1891F2188, OOPS-1891K2198

Two moderate-cost high-repeat queries:
5 10 7094 709 6385 SQL-launchpad-main-master
SELECT TranslationMessage.COMMENT, TranslationMessage.date_created,
                                   TranslationMessage.date_reviewed,
                                   TranslationMessage.id,
                                   TranslationMessage.is_current_ubuntu,
                                   TranslationMessage.is_current_upstream,
                                   TranslationMessage.LANGUAGE, TranslationMessage.msgstr0,
                                                                TranslationMessage.msgstr1,
                                                                TranslationMessage.msgstr2,
                                                                TranslationMessage.msgstr3,
                                                                TranslationMessage.msgstr4,
                                                                TranslationMessage.msgstr5,
                                                                TranslationMessage.origin,
                                                                TranslationMessage.potemplate,
                                                                TranslationMessage.potmsgset,
                                                                TranslationMessage.reviewer,
                                                                TranslationMessage.submitter,
                                                                TranslationMessage.validation_status,
                                                                TranslationMessage.was_obsolete_in_last_import
FROM TranslationMessage
WHERE TranslationMessage.id IN
    (SELECT DISTINCT ON (COALESCE(msgstr0, -$INT), COALESCE(msgstr1, -$INT), COALESCE(msgstr2, -$INT), COALESCE(msgstr3, -$INT), COALESCE(msgstr4, -$INT), COALESCE(msgstr5, -$INT)) TranslationMessage.id
     FROM TranslationMessage
     WHERE TranslationMessage.LANGUAGE = $INT
       AND TranslationMessage.potmsgset <> $INT
       AND potmsgset IN
         (SELECT POTMsgSet.id
          FROM POTMsgSet
          JOIN TranslationTemplateItem ON TranslationTemplateItem.potmsgset = POTMsgSet.id
          JOIN SuggestivePOTemplate ON TranslationTemplateItem.potemplate = SuggestivePOTemplate.potemplate
          WHERE msgid_singular = $INT)
     ORDER BY COALESCE(msgstr0, -$INT), COALESCE(msgstr1, -$INT), COALESCE(msgstr2, -$INT), COALESCE(msgstr3, -$INT), COALESCE(msgstr4, -$INT), COALESCE(msgstr5, -$INT), date_created DESC)LIMIT $INT
6 10 4662 466 4196 SQL-launchpad-main-master
SELECT TranslationMessage.COMMENT, TranslationMessage.date_created,
                                   TranslationMessage.date_reviewed,
                                   TranslationMessage.id,
                                   TranslationMessage.is_current_ubuntu,
                                   TranslationMessage.is_current_upstream,
                                   TranslationMessage.LANGUAGE, TranslationMessage.msgstr0,
                                                                TranslationMessage.msgstr1,
                                                                TranslationMessage.msgstr2,
                                                                TranslationMessage.msgstr3,
                                                                TranslationMessage.msgstr4,
                                                                TranslationMessage.msgstr5,
                                                                TranslationMessage.origin,
                                                                TranslationMessage.potemplate,
                                                                TranslationMessage.potmsgset,
                                                                TranslationMessage.reviewer,
                                                                TranslationMessage.submitter,
                                                                TranslationMessage.validation_status,
                                                                TranslationMessage.was_obsolete_in_last_import
FROM TranslationMessage
WHERE TranslationMessage.id IN
    (SELECT DISTINCT ON (COALESCE(msgstr0, -$INT), COALESCE(msgstr1, -$INT), COALESCE(msgstr2, -$INT), COALESCE(msgstr3, -$INT), COALESCE(msgstr4, -$INT), COALESCE(msgstr5, -$INT)) TranslationMessage.id
     FROM TranslationMessage
     WHERE (is_current_ubuntu IS TRUE
            OR is_current_upstream IS TRUE)
       AND TranslationMessage.LANGUAGE = $INT
       AND TranslationMessage.potmsgset <> $INT
       AND potmsgset IN
         (SELECT POTMsgSet.id
          FROM POTMsgSet
          JOIN TranslationTemplateItem ON TranslationTemplateItem.potmsgset = POTMsgSet.id
          JOIN SuggestivePOTemplate ON TranslationTemplateItem.potemplate = SuggestivePOTemplate.potemplate
          WHERE msgid_singular = $INT)
     ORDER BY COALESCE(msgstr0, -$INT), COALESCE(msgstr1, -$INT), COALESCE(msgstr2, -$INT), COALESCE(msgstr3, -$INT), COALESCE(msgstr4, -$INT), COALESCE(msgstr5, -$INT), date_created DESC)LIMIT $INT

Tags: qa-ok timeout

Related branches

Revision history for this message
Robert Collins (lifeless) wrote :
Download full text (9.8 KiB)

Once particular query was 2 seconds long:

SELECT TranslationMessage.COMMENT, TranslationMessage.date_created,
                                   TranslationMessage.date_reviewed,
                                   TranslationMessage.id,
                                   TranslationMessage.is_current_ubuntu,
                                   TranslationMessage.is_current_upstream,
                                   TranslationMessage.LANGUAGE, TranslationMessage.msgstr0,
                                                                TranslationMessage.msgstr1,
                                                                TranslationMessage.msgstr2,
                                                                TranslationMessage.msgstr3,
                                                                TranslationMessage.msgstr4,
                                                                TranslationMessage.msgstr5,
                                                                TranslationMessage.origin,
                                                                TranslationMessage.potemplate,
                                                                TranslationMessage.potmsgset,
                                                                TranslationMessage.reviewer,
                                                                TranslationMessage.submitter,
                                                                TranslationMessage.validation_status,
                                                                TranslationMessage.was_obsolete_in_last_import
FROM TranslationMessage
WHERE TranslationMessage.id IN
    (SELECT DISTINCT ON (COALESCE(msgstr0, -1), COALESCE(msgstr1, -1), COALESCE(msgstr2, -1), COALESCE(msgstr3, -1), COALESCE(msgstr4, -1), COALESCE(msgstr5, -1)) TranslationMessage.id
     FROM TranslationMessage
     WHERE (is_current_ubuntu IS TRUE
            OR is_current_upstream IS TRUE)
       AND TranslationMessage.LANGUAGE = 387
       AND TranslationMessage.potmsgset <> 9885700
       AND potmsgset IN
         (SELECT POTMsgSet.id
          FROM POTMsgSet
          JOIN TranslationTemplateItem ON TranslationTemplateItem.potmsgset = POTMsgSet.id
          JOIN SuggestivePOTemplate ON TranslationTemplateItem.potemplate = SuggestivePOTemplate.potemplate
          WHERE msgid_singular = 5033)
     ORDER BY COALESCE(msgstr0, -1), COALESCE(msgstr1, -1), COALESCE(msgstr2, -1), COALESCE(msgstr3, -1), COALESCE(msgstr4, -1), COALESCE(msgstr5, -1), date_created DESC)LIMIT 2001

cold explain analyse:

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 Limit (cost=343660.46..345771.54 rows=200 width=76) (actual t...

description: updated
Revision history for this message
Launchpad QA Bot (lpqabot) wrote :
Changed in launchpad:
assignee: nobody → Robert Collins (lifeless)
milestone: none → 11.03
tags: added: qa-needstesting
Changed in launchpad:
status: Triaged → Fix Committed
Revision history for this message
Robert Collins (lifeless) wrote :

6.9 seconds cold on qastaging, 2.73 seconds hot.

tags: added: qa-ok
removed: qa-needstesting
Curtis Hovey (sinzui)
Changed in launchpad:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.