プロジェクト

全般

プロフィール

Enhancement(機能追加・改善) #1898

完了

[PATCH] i18nビヘイビアを使用しているテーブルへのクエリが何度も実行される

Youichi Kimura さんがほぼ14年前に追加. 12年以上前に更新.

ステータス:
Invalid(無効)
優先度:
Normal(通常)
担当者:
対象バージョン:
開始日:
2011-01-30
期日:
進捗率:

0%

予定工数:

説明

概要

「マイホーム」のページにアクセスすると、以下のようにtranslationテーブルに対するクエリが数回実行されます。

SELECT s.id AS s__id, s.name AS s__name, s.application AS s__application FROM sns_term s WHERE (s.application = 'pc_frontend' AND s.id IN (SELECT s.id AS s__id FROM sns_term_translation s2 WHERE (s2.lang = 'en')))
SELECT s.id AS s__id, s.value AS s__value, s.lang AS s__lang FROM sns_term_translation s WHERE (s.id IN ('5'))
SELECT s.id AS s__id, s.value AS s__value, s.lang AS s__lang FROM sns_term_translation s WHERE (s.id IN ('1'))
SELECT s.id AS s__id, s.value AS s__value, s.lang AS s__lang FROM sns_term_translation s WHERE (s.id IN ('3'))
SELECT s.id AS s__id, s.value AS s__value, s.lang AS s__lang FROM sns_term_translation s WHERE (s.id IN ('9'))
SELECT s.id AS s__id, s.value AS s__value, s.lang AS s__lang FROM sns_term_translation s WHERE (s.id IN ('11'))

同様なアクセスがnavigation_translationテーブルに対しても行われます。
速度面での改善があるかどうかは分かりませんが、クエリにleftJoinを使用して実行回数を減らした修正を https://github.com/upsilon/OpenPNE3/commit/cb1804b で行いました。

他の形式にエクスポート: Atom PDF