2009-04-13 15:21:56 |
Данило Шеган |
bug |
|
|
added bug |
2009-04-13 15:22:05 |
Данило Шеган |
rosetta: milestone |
|
2.2.4 |
|
2009-04-13 15:22:05 |
Данило Шеган |
rosetta: assignee |
|
Данило Шеган (danilo) |
|
2009-04-13 15:30:59 |
Данило Шеган |
rosetta: importance |
Undecided |
High |
|
2009-04-13 15:30:59 |
Данило Шеган |
rosetta: status |
New |
In Progress |
|
2009-04-13 16:26:59 |
Данило Шеган |
description |
Postgres chooses a bad query plan with existing 'untranslated' filter. A fix is simple: replace "POTMsgSet.id IN" with "TranslationTemplateItem.potmsgset IN". |
Postgres chooses a bad query plan with existing 'untranslated' filter.
A fix means several things:
* replace "POTMsgSet.id IN" with "TranslationTemplateItem.potmsgset IN"
* add TranslationTemplateItem.potmsgset = TranslationTemplateItem.potmsgset to the translated query so index on that table is preferred (yeah, this looks silly, but improves the speed by more than 10x on staging DB).
Basically, the second change makes Postgres to use translationtemplateitem__potemplate__potmsgset__key index instead of using POTMsgSet id index.
|
|
2009-04-13 16:27:18 |
Данило Шеган |
description |
Postgres chooses a bad query plan with existing 'untranslated' filter.
A fix means several things:
* replace "POTMsgSet.id IN" with "TranslationTemplateItem.potmsgset IN"
* add TranslationTemplateItem.potmsgset = TranslationTemplateItem.potmsgset to the translated query so index on that table is preferred (yeah, this looks silly, but improves the speed by more than 10x on staging DB).
Basically, the second change makes Postgres to use translationtemplateitem__potemplate__potmsgset__key index instead of using POTMsgSet id index.
|
Postgres chooses a bad query plan with existing 'untranslated' filter.
A fix means several things:
* replace "POTMsgSet.id IN" with "TranslationTemplateItem.potmsgset IN"
* add TranslationTemplateItem.potmsgset = TranslationTemplateItem.potmsgset to the translated query so index on that table is preferred (yeah, this looks silly, but improves the speed by more than 10x on staging DB).
Basically, the second change makes Postgres use translationtemplateitem__potemplate__potmsgset__key index instead of using POTMsgSet id index.
|
|
2009-04-13 16:30:09 |
Данило Шеган |
description |
Postgres chooses a bad query plan with existing 'untranslated' filter.
A fix means several things:
* replace "POTMsgSet.id IN" with "TranslationTemplateItem.potmsgset IN"
* add TranslationTemplateItem.potmsgset = TranslationTemplateItem.potmsgset to the translated query so index on that table is preferred (yeah, this looks silly, but improves the speed by more than 10x on staging DB).
Basically, the second change makes Postgres use translationtemplateitem__potemplate__potmsgset__key index instead of using POTMsgSet id index.
|
Postgres chooses a bad query plan with existing 'untranslated' filter.
A fix means several things:
* replace "POTMsgSet.id IN" with "TranslationTemplateItem.potmsgset IN"
* add TranslationTemplateItem.potmsgset = TranslationTemplateItem.potmsgset to the translated query so index on that table is preferred (yeah, this looks silly, but improves the speed by more than 10x on staging DB).
Basically, the second change makes Postgres use translationtemplateitem__potemplate__potmsgset__key index instead of using POTMsgSet id index.
These two changes combined give us around 40x improvement, so on our biggest POTemplate (i.e. ddtp-universe package descriptions, with 45000 messages) we get queries in sub 1s time where we had 40s.
|
|
2009-04-13 16:32:47 |
Данило Шеган |
description |
Postgres chooses a bad query plan with existing 'untranslated' filter.
A fix means several things:
* replace "POTMsgSet.id IN" with "TranslationTemplateItem.potmsgset IN"
* add TranslationTemplateItem.potmsgset = TranslationTemplateItem.potmsgset to the translated query so index on that table is preferred (yeah, this looks silly, but improves the speed by more than 10x on staging DB).
Basically, the second change makes Postgres use translationtemplateitem__potemplate__potmsgset__key index instead of using POTMsgSet id index.
These two changes combined give us around 40x improvement, so on our biggest POTemplate (i.e. ddtp-universe package descriptions, with 45000 messages) we get queries in sub 1s time where we had 40s.
|
Postgres chooses a bad query plan with existing 'untranslated' filter.
A fix means several things:
* replace "POTMsgSet.id IN" with "TranslationTemplateItem.potmsgset IN"
* add TranslationTemplateItem.potmsgset = TranslationTemplateItem.potmsgset to the translated query so index on that table is preferred (yeah, this looks silly, but improves the speed by more than 10x on staging DB).
Basically, the second change makes Postgres use translationtemplateitem__potemplate__potmsgset__key index instead of using POTMsgSet id index.
These two changes combined give us around 40x improvement, so on our biggest POTemplate (i.e. ddtp-universe package descriptions, with 45000 messages) we get queries in 550ms where we had 21s.
|
|
2009-04-14 09:43:02 |
Данило Шеган |
rosetta: status |
In Progress |
Fix Committed |
|
2009-04-30 08:57:39 |
Данило Шеган |
rosetta: status |
Fix Committed |
Fix Released |
|